home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1992-10-02 | 29.6 KB | [ TEXT/CCL2]
open in: MacOS 8.1
extracted
|
Win98
extracted
|
DOS
extracted
browse contents |
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary ).
Confidence Program Detection Match Type Support
10%
dexvert
MacBinary (archive/macBinary)
fallback
Supported
1%
dexvert
Text File (text/txt)
fallback
Supported
100%
file
MacBinary II, inited, Fri Oct 2 09:43:26 1992, modified Fri Oct 2 09:43:26 1992, creator Common Lisp 2, type ASCII, 29222 bytes "Calendar-dialog-item.lisp" , at 0x72a6 873 bytes resource
default (weak)
99%
file
data
default
74%
TrID
Macintosh plain text (MacBinary)
default
25%
TrID
MacBinary 2
default (weak)
100%
siegfried
fmt/1762 MacBinary (II)
default
100%
lsar
MacBinary
default
id metadata key value macFileType [ TEXT] macFileCreator [ CCL2]
hex view +--------+-------------------------+-------------------------+--------+--------+ |00000000| 00 19 43 61 6c 65 6e 64 | 61 72 2d 64 69 61 6c 6f |..Calend|ar-dialo| |00000010| 67 2d 69 74 65 6d 2e 6c | 69 73 70 00 00 00 00 00 |g-item.l|isp.....| |00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000040| 00 54 45 58 54 43 43 4c | 32 01 00 00 00 00 00 00 |.TEXTCCL|2.......| |00000050| 00 00 00 00 00 72 26 00 | 00 03 69 a6 f2 02 7e a6 |.....r&.|..i...~.| |00000060| f2 02 7e 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |..~.....|........| |00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 5c f3 00 00 |........|....\...| |00000080| 28 69 6e 2d 70 61 63 6b | 61 67 65 20 3a 63 6c 2d |(in-pack|age :cl-| |00000090| 75 73 65 72 29 0d 0d 3b | 3b 20 20 43 41 4c 45 4e |user)..;|; CALEN| |000000a0| 44 41 52 2e 4c 49 53 50 | 20 69 73 20 43 6f 70 79 |DAR.LISP| is Copy| |000000b0| 72 69 67 68 74 20 41 70 | 70 6c 65 20 43 6f 6d 70 |right Ap|ple Comp| |000000c0| 75 74 65 72 2c 20 31 39 | 39 32 2e 20 20 41 6c 6c |uter, 19|92. All| |000000d0| 20 72 69 67 68 74 73 20 | 72 65 73 65 72 76 65 64 | rights |reserved| |000000e0| 2e 0d 3b 3b 20 20 20 57 | 72 69 74 74 65 6e 20 62 |..;; W|ritten b| |000000f0| 79 20 54 6f 6d 20 42 6f | 6e 75 72 61 2c 20 0d 3b |y Tom Bo|nura, .;| |00000100| 3b 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |; | | |00000110| 20 20 20 20 20 20 41 64 | 76 61 6e 63 65 64 20 54 | Ad|vanced T| |00000120| 65 63 68 6e 6f 6c 6f 67 | 79 20 47 72 6f 75 70 2c |echnolog|y Group,| |00000130| 20 0d 3b 3b 20 20 20 20 | 20 20 20 20 20 20 20 20 | .;; | | |00000140| 20 20 20 20 20 20 20 20 | 20 41 70 70 6c 65 20 43 | | Apple C| |00000150| 6f 6d 70 75 74 65 72 2c | 20 69 6e 63 2e 0d 3b 3b |omputer,| inc..;;| |00000160| 09 09 09 62 6f 6e 75 72 | 61 40 61 70 70 6c 65 2e |...bonur|a@apple.| |00000170| 63 6f 6d 0d 3b 3b 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |com.;;__|________| |00000180| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |00000190| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |000001a0| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |000001b0| 5f 5f 0d 3b 3b 20 20 44 | 65 66 69 6e 69 74 69 6f |__.;; D|efinitio| |000001c0| 6e 20 6f 66 20 61 20 6e | 65 77 20 63 6c 61 73 73 |n of a n|ew class| |000001d0| 20 6f 66 20 64 69 61 6c | 6f 67 20 69 74 65 6d 73 | of dial|og items| |000001e0| 20 63 61 6c 6c 65 64 20 | 0d 3b 3b 20 20 4d 4f 4e | called |.;; MON| |000001f0| 54 48 2d 43 41 4c 45 4e | 44 41 52 2c 20 61 20 73 |TH-CALEN|DAR, a s| |00000200| 75 62 63 6c 61 73 73 20 | 6f 66 20 61 20 73 65 71 |ubclass |of a seq| |00000210| 75 65 6e 63 65 20 64 69 | 61 6c 6f 67 20 0d 3b 3b |uence di|alog .;;| |00000220| 20 20 69 74 65 6d 20 77 | 69 74 68 20 64 69 6d 65 | item w|ith dime| |00000230| 6e 73 69 6f 6e 73 20 6f | 66 20 37 20 78 20 36 20 |nsions o|f 7 x 6 | |00000240| 63 65 6c 6c 73 2e 20 20 | 54 68 65 20 63 65 6c 6c |cells. |The cell| |00000250| 73 0d 3b 3b 20 20 63 6f | 72 72 6f 73 70 6f 6e 64 |s.;; co|rrospond| |00000260| 20 74 6f 20 20 53 75 2d | 3e 53 61 20 66 6f 72 20 | to Su-|>Sa for | |00000270| 36 20 77 65 65 6b 73 2e | 20 20 49 66 20 74 68 65 |6 weeks.| If the| |00000280| 20 66 69 6c 6c 2e 61 6c | 6c 0d 3b 3b 20 20 73 6c | fill.al|l.;; sl| |00000290| 6f 74 20 66 6f 72 20 74 | 68 65 20 20 63 61 6c 65 |ot for t|he cale| |000002a0| 6e 64 61 72 20 69 73 20 | 54 20 74 68 65 6e 20 69 |ndar is |T then i| |000002b0| 74 20 77 69 6c 6c 20 73 | 68 6f 77 20 74 68 65 20 |t will s|how the | |000002c0| 6c 61 73 74 0d 3b 3b 20 | 20 64 61 79 73 20 6f 66 |last.;; | days of| |000002d0| 20 74 68 65 20 70 72 65 | 76 69 6f 75 73 20 6d 6f | the pre|vious mo| |000002e0| 6e 74 68 20 61 6e 64 20 | 74 68 65 20 66 69 72 73 |nth and |the firs| |000002f0| 74 20 64 61 79 73 20 6f | 66 20 74 68 65 0d 3b 3b |t days o|f the.;;| |00000300| 20 20 6e 65 78 74 20 6d | 6f 6e 74 68 20 74 6f 20 | next m|onth to | |00000310| 66 69 6c 6c 20 74 68 65 | 20 63 61 6c 65 6e 64 61 |fill the| calenda| |00000320| 72 20 69 6e 20 2d 20 6f | 74 68 65 72 77 69 73 65 |r in - o|therwise| |00000330| 20 69 74 20 77 69 6c 6c | 20 6a 75 73 74 20 73 68 | it will| just sh| |00000340| 6f 77 20 74 68 65 0d 3b | 3b 20 20 6d 6f 6e 74 68 |ow the.;|; month| |00000350| 20 6f 66 20 69 6e 74 65 | 72 65 73 74 2e 20 20 0d | of inte|rest. .| |00000360| 3b 3b 20 20 54 68 65 20 | 76 69 65 77 20 64 6f 65 |;; The |view doe| |00000370| 73 20 6e 6f 74 20 73 68 | 6f 77 20 74 68 65 20 6d |s not sh|ow the m| |00000380| 6f 6e 74 68 20 6f 72 20 | 79 65 61 72 20 69 74 73 |onth or |year its| |00000390| 65 6c 66 20 2d 20 6f 6e | 6c 79 0d 3b 3b 20 20 20 |elf - on|ly.;; | |000003a0| 20 20 74 68 65 20 64 61 | 79 20 6e 61 6d 65 73 20 | the da|y names | |000003b0| 61 6e 64 20 74 68 65 20 | 64 61 74 65 73 2e 20 20 |and the |dates. | |000003c0| 20 0d 0d 3b 3b 20 20 45 | 76 65 72 79 20 63 65 6c | ..;; E|very cel| |000003d0| 6c 20 69 6e 20 74 68 65 | 20 76 69 65 77 20 68 61 |l in the| view ha| |000003e0| 73 20 61 6e 20 61 73 73 | 6f 63 69 61 74 65 64 20 |s an ass|ociated | |000003f0| 6f 62 6a 65 63 74 20 77 | 68 69 63 68 20 69 73 0d |object w|hich is.| |00000400| 3b 3b 20 20 61 6e 20 69 | 6e 73 74 61 6e 63 65 20 |;; an i|nstance | |00000410| 6f 66 20 44 41 59 2e 20 | 20 44 41 59 20 69 6e 73 |of DAY. | DAY ins| |00000420| 74 61 6e 63 65 73 20 68 | 6f 6c 64 20 69 6e 66 6f |tances h|old info| |00000430| 72 6d 61 74 69 6f 6e 0d | 3b 3b 20 20 61 62 6f 75 |rmation.|;; abou| |00000440| 74 20 74 68 65 20 64 61 | 74 65 2c 20 6d 6f 6e 74 |t the da|te, mont| |00000450| 68 2c 20 79 65 61 72 20 | 61 6e 64 20 64 61 79 20 |h, year |and day | |00000460| 6f 66 20 74 68 65 20 79 | 65 61 72 20 2d 20 61 6e |of the y|ear - an| |00000470| 64 0d 3b 3b 20 20 61 6e | 79 74 68 69 6e 67 20 65 |d.;; an|ything e| |00000480| 6c 73 65 20 74 68 65 20 | 69 6d 70 6c 65 6d 65 6e |lse the |implemen| |00000490| 74 6f 72 20 77 69 73 68 | 65 73 2e 20 20 54 68 65 |tor wish|es. The| |000004a0| 0d 3b 3b 20 20 56 49 45 | 57 2d 43 4c 49 43 4b 2d |.;; VIE|W-CLICK-| |000004b0| 45 56 45 4e 54 2d 48 41 | 4e 44 4c 45 52 20 67 65 |EVENT-HA|NDLER ge| |000004c0| 74 73 20 61 74 20 74 68 | 65 20 64 61 79 20 6f 62 |ts at th|e day ob| |000004d0| 6a 65 63 74 20 2d 20 68 | 61 63 6b 0d 3b 3b 20 20 |ject - h|ack.;; | |000004e0| 74 68 69 73 20 74 6f 20 | 67 65 74 20 74 68 65 20 |this to |get the | |000004f0| 62 65 68 61 76 69 6f 72 | 20 79 6f 75 20 77 61 6e |behavior| you wan| |00000500| 74 2e 0d 3b 3b 20 20 5f | 5f 5f 5f 5f 5f 5f 5f 5f |t..;; _|________| |00000510| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |00000520| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |00000530| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |00000540| 5f 5f 5f 0d 3b 3b 20 20 | 20 20 20 20 20 20 20 20 |___.;; | | |00000550| 20 20 20 20 20 43 48 41 | 4e 47 45 53 0d 3b 3b 0d | CHA|NGES.;;.| |00000560| 3b 3b 0d 3b 3b 20 20 5f | 5f 5f 5f 5f 5f 5f 5f 5f |;;.;; _|________| |00000570| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |00000580| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |00000590| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |000005a0| 5f 5f 5f 0d 3b 3b 20 20 | 20 20 20 20 20 20 20 20 |___.;; | | |000005b0| 20 20 20 20 20 42 55 47 | 53 0d 3b 3b 0d 3b 3b 20 | BUG|S.;;.;; | |000005c0| 20 31 2e 20 20 54 68 65 | 20 76 69 65 77 20 64 6f | 1. The| view do| |000005d0| 65 73 20 6e 6f 74 20 73 | 65 65 6d 20 74 6f 20 62 |es not s|eem to b| |000005e0| 65 20 72 65 64 72 61 77 | 6e 20 63 6f 72 72 65 63 |e redraw|n correc| |000005f0| 74 6c 79 20 2d 20 69 2e | 65 2e 2c 0d 3b 3b 20 20 |tly - i.|e.,.;; | |00000600| 74 68 65 20 6c 61 73 74 | 20 73 65 6c 65 63 74 65 |the last| selecte| |00000610| 64 20 63 65 6c 6c 20 74 | 65 6e 64 73 20 74 6f 20 |d cell t|ends to | |00000620| 6c 6f 73 65 20 74 68 65 | 20 6e 75 6d 62 65 72 20 |lose the| number | |00000630| 6c 61 62 65 6c 0d 3b 3b | 20 20 77 68 65 6e 20 74 |label.;;| when t| |00000640| 68 65 20 77 69 6e 64 6f | 77 20 63 6f 6e 74 61 69 |he windo|w contai| |00000650| 6e 69 6e 67 20 74 68 65 | 20 76 69 65 77 20 69 73 |ning the| view is| |00000660| 20 64 65 73 65 6c 65 63 | 74 65 64 2e 0d 3b 3b 20 | deselec|ted..;; | |00000670| 20 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f | _______|________| |00000680| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |00000690| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |000006a0| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 0d 23 7c |________|_____.#|| |000006b0| 0d 20 20 20 20 20 20 4d | 41 43 52 4f 53 0d 57 49 |. M|ACROS.WI| |000006c0| 54 48 2d 4e 4f 52 4d 41 | 4c 49 5a 45 44 2d 44 41 |TH-NORMA|LIZED-DA| |000006d0| 59 20 28 26 62 6f 64 79 | 20 62 6f 64 79 29 20 22 |Y (&body| body) "| |000006e0| 4e 6f 72 6d 61 6c 69 7a | 65 20 74 68 65 20 64 61 |Normaliz|e the da| |000006f0| 79 20 74 6f 20 74 68 65 | 0d 6e 75 6d 62 65 72 69 |y to the|.numberi| |00000700| 6e 67 20 73 63 68 65 6d | 65 20 77 68 65 72 65 20 |ng schem|e where | |00000710| 73 75 6e 64 61 79 20 69 | 73 20 30 20 72 61 74 68 |sunday i|s 0 rath| |00000720| 65 72 20 74 68 61 6e 20 | 36 20 28 75 67 68 29 22 |er than |6 (ugh)"| |00000730| 0d 47 45 54 2d 4d 4f 4e | 54 48 2d 4e 41 4d 45 20 |.GET-MON|TH-NAME | |00000740| 28 6d 6f 6e 74 68 2e 69 | 6e 64 65 78 29 20 22 52 |(month.i|ndex) "R| |00000750| 65 74 75 72 6e 20 74 68 | 65 20 6e 61 6d 65 20 6f |eturn th|e name o| |00000760| 66 20 74 68 65 20 6d 6f | 6e 74 68 0d 67 69 76 65 |f the mo|nth.give| |00000770| 6e 20 74 68 65 20 6d 6f | 6e 74 68 20 69 6e 64 65 |n the mo|nth inde| |00000780| 78 22 20 0d 47 45 54 2d | 44 41 59 2d 4e 41 4d 45 |x" .GET-|DAY-NAME| |00000790| 20 28 64 61 79 2e 69 6e | 64 65 78 29 20 22 52 65 | (day.in|dex) "Re| |000007a0| 74 75 72 6e 20 74 68 65 | 20 6e 61 6d 65 20 6f 66 |turn the| name of| |000007b0| 20 74 68 65 20 64 61 79 | 20 67 69 76 65 6e 0d 74 | the day| given.t| |000007c0| 68 65 20 64 61 79 27 73 | 20 69 6e 64 65 78 22 20 |he day's| index" | |000007d0| 0d 20 20 20 20 20 20 56 | 41 52 49 41 42 4c 45 53 |. V|ARIABLES| |000007e0| 0d 2a 77 6b 64 61 79 73 | 2a 20 22 41 6e 20 61 6c |.*wkdays|* "An al| |000007f0| 69 73 74 20 77 68 69 63 | 68 20 67 69 76 65 73 20 |ist whic|h gives | |00000800| 74 68 65 20 6e 61 6d 65 | 20 6f 66 20 74 68 65 20 |the name| of the | |00000810| 77 65 65 6b 64 61 79 0d | 69 6e 64 65 78 65 64 20 |weekday.|indexed | |00000820| 69 6e 20 61 20 72 61 74 | 69 6f 6e 61 6c 20 77 61 |in a rat|ional wa| |00000830| 79 2e 22 20 20 20 0d 2a | 64 61 79 73 2d 69 6e 2d |y." .*|days-in-| |00000840| 6d 6f 6e 74 68 2a 20 22 | 41 6e 20 61 6c 69 73 74 |month* "|An alist| |00000850| 20 77 68 69 63 68 20 69 | 64 65 6e 74 69 66 69 65 | which i|dentifie| |00000860| 73 20 74 68 65 20 6e 75 | 6d 62 65 72 20 6f 66 20 |s the nu|mber of | |00000870| 64 61 79 73 20 77 69 74 | 68 20 61 20 6d 6f 6e 74 |days wit|h a mont| |00000880| 68 20 6e 75 6d 62 65 72 | 22 0d 2a 6d 6f 6e 74 68 |h number|".*month| |00000890| 2d 6e 61 6d 65 73 2a 20 | 22 41 6e 20 61 6c 69 73 |-names* |"An alis| |000008a0| 74 20 77 68 69 63 68 20 | 72 65 6c 61 74 65 73 20 |t which |relates | |000008b0| 74 68 65 20 6d 6f 6e 74 | 68 20 6e 75 6d 62 65 72 |the mont|h number| |000008c0| 20 77 69 74 68 20 61 20 | 73 74 72 69 6e 67 22 0d | with a |string".| |000008d0| 20 20 20 20 20 20 46 55 | 4e 43 54 49 4f 4e 53 0d | FU|NCTIONS.| |000008e0| 4c 45 41 50 2d 59 45 41 | 52 2d 50 20 28 79 65 61 |LEAP-YEA|R-P (yea| |000008f0| 72 29 20 22 52 65 74 75 | 72 6e 20 74 20 69 66 20 |r) "Retu|rn t if | |00000900| 74 68 69 73 20 69 73 20 | 61 20 6c 65 61 70 20 79 |this is |a leap y| |00000910| 65 61 72 22 0d 44 41 59 | 2d 4f 46 2d 59 45 41 52 |ear".DAY|-OF-YEAR| |00000920| 20 28 64 61 79 20 6d 6f | 6e 74 68 20 79 65 61 72 | (day mo|nth year| |00000930| 29 20 22 52 65 74 75 72 | 6e 73 20 61 20 6e 75 6d |) "Retur|ns a num| |00000940| 62 65 72 20 72 65 70 72 | 65 73 65 6e 74 69 6e 67 |ber repr|esenting| |00000950| 0d 74 68 65 20 64 61 79 | 20 6f 66 20 74 68 65 20 |.the day| of the | |00000960| 79 65 61 72 20 77 69 74 | 68 20 31 2f 31 2f 79 72 |year wit|h 1/1/yr| |00000970| 20 62 65 69 6e 67 20 31 | 20 61 6e 64 20 31 32 2f | being 1| and 12/| |00000980| 33 31 2f 79 72 20 62 65 | 69 6e 67 0d 33 36 35 20 |31/yr be|ing.365 | |00000990| 6f 72 20 69 66 20 6c 65 | 61 70 79 65 61 72 20 33 |or if le|apyear 3| |000009a0| 36 36 22 20 0d 44 41 59 | 2d 4f 46 2d 57 45 45 4b |66" .DAY|-OF-WEEK| |000009b0| 20 28 75 6e 69 76 65 72 | 73 61 6c 2e 74 69 6d 65 | (univer|sal.time| |000009c0| 29 20 22 52 65 74 75 72 | 6e 20 76 61 6c 75 65 73 |) "Retur|n values| |000009d0| 20 6f 66 20 74 68 65 20 | 64 61 79 20 6f 66 0d 74 | of the |day of.t| |000009e0| 68 65 20 77 65 65 6b 20 | 61 6e 64 20 74 68 65 20 |he week |and the | |000009f0| 64 61 79 20 61 73 20 61 | 20 73 74 72 69 6e 67 20 |day as a| string | |00000a00| 66 6f 72 20 74 68 65 20 | 75 6e 69 76 65 72 73 61 |for the |universa| |00000a10| 6c 20 74 69 6d 65 20 70 | 61 73 73 65 64 20 69 6e |l time p|assed in| |00000a20| 22 0d 46 49 52 53 54 2d | 44 41 59 2d 4f 46 2d 4d |".FIRST-|DAY-OF-M| |00000a30| 4f 4e 54 48 20 28 6d 6f | 6e 74 68 20 79 65 61 72 |ONTH (mo|nth year| |00000a40| 29 20 22 52 65 74 75 72 | 6e 20 74 68 65 20 66 69 |) "Retur|n the fi| |00000a50| 72 73 74 20 64 61 79 20 | 6f 66 20 74 68 65 0d 6d |rst day |of the.m| |00000a60| 6f 6e 74 68 20 66 6f 72 | 20 74 68 65 20 67 69 76 |onth for| the giv| |00000a70| 65 6e 20 79 65 61 72 22 | 20 0d 4c 41 53 54 2d 44 |en year"| .LAST-D| |00000a80| 41 59 2d 4f 46 2d 4d 4f | 4e 54 48 20 28 6d 6f 6e |AY-OF-MO|NTH (mon| |00000a90| 74 68 20 79 65 61 72 29 | 20 22 52 65 74 75 72 6e |th year)| "Return| |00000aa0| 20 74 68 65 20 6c 61 73 | 74 20 64 61 79 20 6f 66 | the las|t day of| |00000ab0| 20 74 68 65 0d 6d 6f 6e | 74 68 20 66 6f 72 20 61 | the.mon|th for a| |00000ac0| 20 67 69 76 65 6e 20 79 | 65 61 72 22 20 0d 50 52 | given y|ear" .PR| |00000ad0| 45 56 49 4f 55 53 2d 4d | 4f 4e 54 48 20 28 63 75 |EVIOUS-M|ONTH (cu| |00000ae0| 72 72 65 6e 74 2d 6d 6f | 6e 74 68 29 20 22 52 65 |rrent-mo|nth) "Re| |00000af0| 74 75 72 6e 20 74 68 65 | 20 70 72 65 76 69 6f 75 |turn the| previou| |00000b00| 73 20 6d 6f 6e 74 68 22 | 20 0d 4e 45 58 54 2d 4d |s month"| .NEXT-M| |00000b10| 4f 4e 54 48 20 28 63 75 | 72 72 65 6e 74 2d 6d 6f |ONTH (cu|rrent-mo| |00000b20| 6e 74 68 29 20 22 52 65 | 74 75 72 6e 20 74 68 65 |nth) "Re|turn the| |00000b30| 20 6e 65 78 74 20 6d 6f | 6e 74 68 22 20 0d 44 41 | next mo|nth" .DA| |00000b40| 59 53 2d 54 4f 2d 50 52 | 45 50 45 4e 44 20 28 63 |YS-TO-PR|EPEND (c| |00000b50| 75 72 72 65 6e 74 2d 6d | 6f 6e 74 68 20 63 75 72 |urrent-m|onth cur| |00000b60| 72 65 6e 74 2d 79 65 61 | 72 20 26 61 75 78 20 64 |rent-yea|r &aux d| |00000b70| 61 79 31 29 0d 22 52 65 | 74 75 72 6e 20 61 20 6c |ay1)."Re|turn a l| |00000b80| 69 73 74 20 6f 66 20 64 | 61 79 73 20 74 6f 20 70 |ist of d|ays to p| |00000b90| 72 65 70 65 6e 64 20 74 | 6f 20 74 68 65 20 63 75 |repend t|o the cu| |00000ba0| 72 72 65 6e 74 20 6d 6f | 6e 74 68 27 73 20 63 61 |rrent mo|nth's ca| |00000bb0| 6c 65 6e 64 61 72 22 20 | 0d 20 44 41 59 53 2d 54 |lendar" |. DAYS-T| |00000bc0| 4f 2d 41 50 50 45 4e 44 | 20 28 63 75 72 72 65 6e |O-APPEND| (curren| |00000bd0| 74 2d 6d 6f 6e 74 68 20 | 63 75 72 72 65 6e 74 2d |t-month |current-| |00000be0| 79 65 61 72 29 20 22 52 | 65 74 75 72 6e 20 61 20 |year) "R|eturn a | |00000bf0| 6c 69 73 74 0d 6f 66 20 | 64 61 79 73 20 74 6f 20 |list.of |days to | |00000c00| 61 70 70 65 6e 64 20 74 | 6f 20 74 68 65 20 63 75 |append t|o the cu| |00000c10| 72 72 65 6e 74 20 6d 6f | 6e 74 68 27 73 20 63 61 |rrent mo|nth's ca| |00000c20| 6c 65 6e 64 61 72 22 20 | 0d 4d 4f 4e 54 48 2d 59 |lendar" |.MONTH-Y| |00000c30| 52 20 28 29 20 22 52 65 | 74 75 72 6e 20 61 20 6c |R () "Re|turn a l| |00000c40| 69 73 74 20 6f 66 20 74 | 68 65 20 63 75 72 72 65 |ist of t|he curre| |00000c50| 6e 74 20 6d 6f 6e 74 68 | 20 61 6e 64 20 79 65 61 |nt month| and yea| |00000c60| 72 22 0d 44 41 59 53 2d | 49 4e 2d 4d 4f 4e 54 48 |r".DAYS-|IN-MONTH| |00000c70| 20 28 6d 6f 6e 74 68 20 | 79 65 61 72 29 20 22 52 | (month |year) "R| |00000c80| 65 74 75 72 6e 20 74 68 | 65 20 6e 75 6d 62 65 72 |eturn th|e number| |00000c90| 20 6f 66 20 64 61 79 73 | 20 69 6e 20 74 68 65 0d | of days| in the.| |00000ca0| 6d 6f 6e 74 68 20 63 6f | 72 72 65 63 74 69 6e 67 |month co|rrecting| |00000cb0| 20 66 6f 72 20 6c 65 61 | 70 20 79 65 61 72 22 0d | for lea|p year".| |00000cc0| 20 20 20 20 20 20 43 4c | 41 53 53 45 53 20 26 20 | CL|ASSES & | |00000cd0| 4d 45 54 48 4f 44 53 0d | 4d 4f 4e 54 48 2d 43 41 |METHODS.|MONTH-CA| |00000ce0| 4c 45 4e 44 41 52 20 28 | 53 45 51 55 45 4e 43 45 |LENDAR (|SEQUENCE| |00000cf0| 2d 44 49 41 4c 4f 47 2d | 49 54 45 4d 29 0d 20 49 |-DIALOG-|ITEM). I| |00000d00| 4e 49 54 49 41 4c 49 5a | 45 2d 49 4e 53 54 41 4e |NITIALIZ|E-INSTAN| |00000d10| 43 45 20 3a 41 46 54 45 | 52 20 28 28 73 65 6c 66 |CE :AFTE|R ((self| |00000d20| 20 4d 4f 4e 54 48 2d 43 | 41 4c 45 4e 44 41 52 29 | MONTH-C|ALENDAR)| |00000d30| 20 20 26 72 65 73 74 0d | 69 6e 69 74 66 6f 72 6d | &rest.|initform| |00000d40| 73 29 20 22 53 65 74 73 | 20 74 68 65 20 63 65 6c |s) "Sets| the cel| |00000d50| 6c 20 73 69 7a 65 2c 20 | 63 72 65 61 74 65 73 20 |l size, |creates | |00000d60| 74 68 65 20 64 61 79 73 | 20 61 6e 64 20 66 69 6c |the days| and fil| |00000d70| 6c 73 0d 74 68 65 6d 20 | 69 6e 20 66 6f 72 20 74 |ls.them |in for t| |00000d80| 68 65 20 63 75 72 72 65 | 6e 74 20 63 61 6c 65 6e |he curre|nt calen| |00000d90| 64 61 72 20 76 69 65 77 | 22 0d 20 56 49 45 57 2d |dar view|". VIEW-| |00000da0| 43 4c 49 43 4b 2d 45 56 | 45 4e 54 2d 48 41 4e 44 |CLICK-EV|ENT-HAND| |00000db0| 4c 45 52 20 28 28 73 65 | 6c 66 20 4d 4f 4e 54 48 |LER ((se|lf MONTH| |00000dc0| 2d 43 41 4c 45 4e 44 41 | 52 29 20 77 68 65 72 65 |-CALENDA|R) where| |00000dd0| 29 20 22 54 68 65 0d 64 | 65 66 61 75 6c 74 20 77 |) "The.d|efault w| |00000de0| 69 6c 6c 20 6a 75 73 74 | 20 72 65 74 75 72 6e 20 |ill just| return | |00000df0| 74 68 65 20 64 61 79 20 | 63 6c 69 63 6b 65 64 20 |the day |clicked | |00000e00| 6f 6e 20 2d 20 73 70 65 | 63 69 61 6c 69 7a 65 0d |on - spe|cialize.| |00000e10| 74 68 69 73 20 66 6f 72 | 20 61 6e 79 20 6f 74 68 |this for| any oth| |00000e20| 65 72 20 70 75 72 70 6f | 73 65 22 0d 43 52 45 41 |er purpo|se".CREA| |00000e30| 54 45 2d 44 41 59 53 20 | 28 28 73 65 6c 66 20 4d |TE-DAYS |((self M| |00000e40| 4f 4e 54 48 2d 43 41 4c | 45 4e 44 41 52 29 29 20 |ONTH-CAL|ENDAR)) | |00000e50| 22 43 72 65 61 74 65 73 | 20 74 68 65 20 64 61 79 |"Creates| the day| |00000e60| 73 20 77 68 69 63 68 0d | 61 72 65 20 61 73 73 6f |s which.|are asso| |00000e70| 63 69 61 74 65 64 20 77 | 69 74 68 20 74 68 65 20 |ciated w|ith the | |00000e80| 63 65 6c 6c 73 20 69 6e | 20 74 68 65 20 76 69 65 |cells in| the vie| |00000e90| 77 22 0d 20 46 49 4c 4c | 2d 43 41 4c 45 4e 44 41 |w". FILL|-CALENDA| |00000ea0| 52 2d 43 45 4c 4c 53 20 | 28 28 73 65 6c 66 20 4d |R-CELLS |((self M| |00000eb0| 4f 4e 54 48 2d 43 41 4c | 45 4e 44 41 52 29 29 20 |ONTH-CAL|ENDAR)) | |00000ec0| 22 46 6f 72 20 65 61 63 | 68 20 6f 66 0d 74 68 65 |"For eac|h of.the| |00000ed0| 20 64 61 79 20 69 74 65 | 6d 73 20 61 73 73 6f 63 | day ite|ms assoc| |00000ee0| 69 61 74 65 64 20 77 69 | 74 68 20 74 68 65 20 63 |iated wi|th the c| |00000ef0| 61 6c 65 6e 64 61 72 20 | 76 69 65 77 20 66 69 6c |alendar |view fil| |00000f00| 6c 20 69 6e 20 74 68 65 | 20 61 70 70 72 6f 70 72 |l in the| appropr| |00000f10| 69 61 74 65 20 73 6c 6f | 74 73 22 0d 46 49 4c 4c |iate slo|ts".FILL| |00000f20| 2d 57 49 54 48 2d 4c 41 | 53 54 2d 4d 4f 4e 54 48 |-WITH-LA|ST-MONTH| |00000f30| 20 28 28 73 65 6c 66 20 | 4d 4f 4e 54 48 2d 43 41 | ((self |MONTH-CA| |00000f40| 4c 45 4e 44 41 52 29 20 | 64 61 79 73 20 6d 6f 6e |LENDAR) |days mon| |00000f50| 74 68 20 79 65 61 72 29 | 0d 22 46 69 6c 6c 20 69 |th year)|."Fill i| |00000f60| 6e 20 74 68 65 20 64 61 | 79 73 20 66 6f 72 20 74 |n the da|ys for t| |00000f70| 68 65 20 70 72 65 76 69 | 6f 75 73 20 6d 6f 6e 74 |he previ|ous mont| |00000f80| 68 20 69 66 20 74 68 65 | 20 66 69 6c 6c 2e 61 6c |h if the| fill.al| |00000f90| 6c 20 73 6c 6f 74 20 69 | 73 20 54 22 0d 46 49 4c |l slot i|s T".FIL| |00000fa0| 4c 2d 57 49 54 48 2d 4e | 45 58 54 2d 4d 4f 4e 54 |L-WITH-N|EXT-MONT| |00000fb0| 48 20 28 28 73 65 6c 66 | 20 4d 4f 4e 54 48 2d 43 |H ((self| MONTH-C| |00000fc0| 41 4c 45 4e 44 41 52 29 | 20 64 61 79 73 20 6d 6f |ALENDAR)| days mo| |00000fd0| 6e 74 68 20 79 65 61 72 | 29 0d 22 46 69 6e 64 20 |nth year|)."Find | |00000fe0| 74 68 65 20 6e 75 6d 62 | 65 72 20 6f 66 20 64 61 |the numb|er of da| |00000ff0| 79 73 20 74 6f 20 61 70 | 70 65 6e 64 20 74 68 65 |ys to ap|pend the| |00001000| 6e 20 77 6f 72 6b 20 62 | 61 63 6b 77 61 72 64 20 |n work b|ackward | |00001010| 66 72 6f 6d 0d 34 32 20 | 2d 20 74 68 65 20 6e 75 |from.42 |- the nu| |00001020| 6d 62 65 72 20 6f 66 20 | 63 65 6c 6c 73 20 69 6e |mber of |cells in| |00001030| 20 74 68 65 20 63 61 6c | 65 6e 64 61 72 22 20 0d | the cal|endar" .| |00001040| 46 49 4c 4c 2d 43 55 52 | 52 45 4e 54 2d 4d 4f 4e |FILL-CUR|RENT-MON| |00001050| 54 48 20 28 28 73 65 6c | 66 20 4d 4f 4e 54 48 2d |TH ((sel|f MONTH-| |00001060| 43 41 4c 45 4e 44 41 52 | 29 20 64 61 79 73 20 6d |CALENDAR|) days m| |00001070| 6f 6e 74 68 20 79 65 61 | 72 29 0d 22 46 69 6c 6c |onth yea|r)."Fill| |00001080| 20 69 6e 20 74 68 65 20 | 64 61 79 73 20 69 74 65 | in the |days ite| |00001090| 6d 73 20 61 73 73 6f 63 | 69 61 74 65 64 20 77 69 |ms assoc|iated wi| |000010a0| 74 68 20 74 68 65 20 63 | 75 72 72 65 6e 74 20 6d |th the c|urrent m| |000010b0| 6f 6e 74 68 22 20 0d 56 | 49 45 57 2d 44 52 41 57 |onth" .V|IEW-DRAW| |000010c0| 2d 43 4f 4e 54 45 4e 54 | 53 20 28 28 63 61 6c 65 |-CONTENT|S ((cale| |000010d0| 6e 64 61 72 20 4d 4f 4e | 54 48 2d 43 41 4c 45 4e |ndar MON|TH-CALEN| |000010e0| 44 41 52 29 29 0d 52 45 | 53 45 54 2d 44 41 59 53 |DAR)).RE|SET-DAYS| |000010f0| 20 28 28 73 65 6c 66 20 | 4d 4f 4e 54 48 2d 43 41 | ((self |MONTH-CA| |00001100| 4c 45 4e 44 41 52 29 20 | 64 61 79 73 29 20 22 46 |LENDAR) |days) "F| |00001110| 6f 72 20 65 61 63 68 20 | 6f 66 20 74 68 65 0d 64 |or each |of the.d| |00001120| 61 79 73 20 72 65 73 65 | 74 20 74 68 65 20 72 65 |ays rese|t the re| |00001130| 6c 65 76 61 6e 74 20 73 | 6c 6f 74 73 22 20 0d 53 |levant s|lots" .S| |00001140| 48 4f 57 2d 4e 45 58 54 | 20 28 28 63 61 6c 65 6e |HOW-NEXT| ((calen| |00001150| 64 61 72 20 4d 4f 4e 54 | 48 2d 43 41 4c 45 4e 44 |dar MONT|H-CALEND| |00001160| 41 52 29 29 20 22 53 68 | 6f 77 20 74 68 65 20 6e |AR)) "Sh|ow the n| |00001170| 65 78 74 20 6d 6f 6e 74 | 68 0d 66 6f 72 20 74 68 |ext mont|h.for th| |00001180| 65 20 63 61 6c 65 6e 64 | 61 72 2d 20 72 65 74 75 |e calend|ar- retu| |00001190| 72 6e 20 74 68 65 20 6e | 61 6d 65 20 6f 66 20 74 |rn the n|ame of t| |000011a0| 68 65 20 6d 6f 6e 74 68 | 22 0d 53 48 4f 57 2d 50 |he month|".SHOW-P| |000011b0| 52 45 56 49 4f 55 53 20 | 28 28 63 61 6c 65 6e 64 |REVIOUS |((calend| |000011c0| 61 72 20 4d 4f 4e 54 48 | 2d 43 41 4c 45 4e 44 41 |ar MONTH|-CALENDA| |000011d0| 52 29 29 20 22 53 48 6f | 77 20 74 68 65 20 70 72 |R)) "SHo|w the pr| |000011e0| 65 76 69 6f 75 73 0d 6d | 6f 6e 74 68 2e 20 20 52 |evious.m|onth. R| |000011f0| 65 74 75 72 6e 20 74 68 | 65 20 6e 61 6d 65 20 6f |eturn th|e name o| |00001200| 66 20 74 68 65 20 6d 6f | 6e 74 68 22 0d 20 56 49 |f the mo|nth". VI| |00001210| 45 57 2d 44 52 41 57 2d | 43 41 4c 45 4e 44 41 52 |EW-DRAW-|CALENDAR| |00001220| 2d 47 52 49 44 20 28 28 | 73 65 6c 66 20 4d 4f 4e |-GRID ((|self MON| |00001230| 54 48 2d 43 41 4c 45 4e | 44 41 52 29 29 20 22 44 |TH-CALEN|DAR)) "D| |00001240| 72 61 77 73 20 61 0d 37 | 58 36 20 67 72 69 64 20 |raws a.7|X6 grid | |00001250| 77 69 74 68 20 6c 61 62 | 65 6c 73 20 66 6f 72 20 |with lab|els for | |00001260| 74 68 65 20 6e 61 6d 65 | 73 20 6f 66 20 74 68 65 |the name|s of the| |00001270| 20 72 6f 77 73 20 28 64 | 61 79 73 20 6f 66 20 74 | rows (d|ays of t| |00001280| 68 65 20 77 65 65 6b 29 | 22 20 0d 20 46 49 52 53 |he week)|" . FIRS| |00001290| 54 2d 4f 46 2d 4d 4f 4e | 54 48 2d 43 45 4c 4c 20 |T-OF-MON|TH-CELL | |000012a0| 28 28 73 65 6c 66 20 6d | 6f 6e 74 68 2d 63 61 6c |((self m|onth-cal| |000012b0| 65 6e 64 61 72 29 20 6d | 6f 6e 74 68 20 79 65 61 |endar) m|onth yea| |000012c0| 72 29 0d 22 52 65 74 75 | 72 6e 20 74 68 65 20 63 |r)."Retu|rn the c| |000012d0| 65 6c 6c 20 6f 66 20 74 | 68 65 20 76 69 65 77 20 |ell of t|he view | |000012e0| 77 68 69 63 68 20 63 6f | 72 72 6f 73 70 6f 6e 64 |which co|rrospond| |000012f0| 73 20 74 6f 20 74 68 65 | 20 20 66 69 72 73 74 20 |s to the| first | |00001300| 6f 66 20 74 68 65 20 6d | 6f 6e 74 68 22 20 0d 20 |of the m|onth" . | |00001310| 4c 41 53 54 2d 4f 46 2d | 4d 4f 4e 54 48 2d 43 45 |LAST-OF-|MONTH-CE| |00001320| 4c 4c 20 28 28 73 65 6c | 66 20 6d 6f 6e 74 68 2d |LL ((sel|f month-| |00001330| 63 61 6c 65 6e 64 61 72 | 29 20 6d 6f 6e 74 68 20 |calendar|) month | |00001340| 79 65 61 72 29 0d 4c 41 | 59 4f 55 54 2d 44 41 59 |year).LA|YOUT-DAY| |00001350| 2d 4c 41 42 45 4c 53 20 | 28 28 73 65 6c 66 20 6d |-LABELS |((self m| |00001360| 6f 6e 74 68 2d 63 61 6c | 65 6e 64 61 72 29 29 20 |onth-cal|endar)) | |00001370| 22 50 75 74 20 74 68 65 | 20 6e 61 6d 65 73 20 6f |"Put the| names o| |00001380| 66 0d 74 68 65 20 63 6f | 6c 75 6d 6e 73 20 69 6e |f.the co|lumns in| |00001390| 20 74 68 65 20 66 69 72 | 73 74 20 72 6f 77 20 6f | the fir|st row o| |000013a0| 66 20 63 65 6c 6c 73 2d | 20 4e 6f 74 65 3a 20 41 |f cells-| Note: A| |000013b0| 20 62 69 74 20 6f 66 20 | 61 20 68 61 63 6b 0d 2d | bit of |a hack.-| |000013c0| 20 77 6f 75 6c 64 20 62 | 65 20 6e 69 63 65 20 74 | would b|e nice t| |000013d0| 6f 20 68 61 76 65 20 6f | 70 74 69 6f 6e 61 6c 20 |o have o|ptional | |000013e0| 66 6f 6e 74 73 20 66 6f | 72 20 74 68 65 20 64 61 |fonts fo|r the da| |000013f0| 79 73 20 61 6e 64 0d 63 | 65 6e 74 65 72 20 74 68 |ys and.c|enter th| |00001400| 65 6d 20 6d 6f 72 65 20 | 69 6e 74 65 6c 6c 69 67 |em more |intellig| |00001410| 65 6e 74 6c 79 20 2d 20 | 61 6c 73 6f 20 73 68 6f |ently - |also sho| |00001420| 75 6c 64 20 64 6f 20 61 | 6c 6c 20 74 68 65 0d 63 |uld do a|ll the.c| |00001430| 61 6c 63 75 6c 61 74 69 | 6f 6e 73 20 62 79 20 74 |alculati|ons by t| |00001440| 68 65 20 73 69 7a 65 20 | 6f 66 20 74 68 65 20 73 |he size |of the s| |00001450| 74 72 69 6e 67 2e 22 0d | 4c 41 59 4f 55 54 2d 44 |tring.".|LAYOUT-D| |00001460| 41 59 2d 4e 55 4d 42 45 | 52 53 20 28 28 73 65 6c |AY-NUMBE|RS ((sel| |00001470| 66 20 6d 6f 6e 74 68 2d | 63 61 6c 65 6e 64 61 72 |f month-|calendar| |00001480| 29 20 6d 6f 6e 74 68 20 | 79 65 61 72 29 0d 22 42 |) month |year)."B| |00001490| 65 67 69 6e 6e 69 6e 67 | 20 61 74 20 74 68 65 20 |eginning| at the | |000014a0| 66 69 72 73 74 20 6f 66 | 20 6d 6f 6e 74 68 20 63 |first of| month c| |000014b0| 65 6c 6c 20 6c 61 79 6f | 75 74 20 74 68 65 20 64 |ell layo|ut the d| |000014c0| 61 79 20 6e 75 6d 62 65 | 72 73 0d 66 6f 72 20 74 |ay numbe|rs.for t| |000014d0| 68 69 73 20 6d 6f 6e 74 | 68 20 69 6e 63 6c 75 64 |his mont|h includ| |000014e0| 69 6e 67 20 74 68 65 20 | 65 6e 64 20 6f 66 20 74 |ing the |end of t| |000014f0| 68 65 20 6c 61 73 74 20 | 61 6e 64 20 74 68 65 0d |he last |and the.| |00001500| 62 65 67 69 6e 6e 69 6e | 67 20 6f 66 20 74 68 65 |beginnin|g of the| |00001510| 20 6e 65 78 74 20 6d 6f | 6e 74 68 20 69 66 20 66 | next mo|nth if f| |00001520| 69 6c 6c 2e 61 6c 6c 20 | 69 73 20 54 22 0d 0d 44 |ill.all |is T"..D| |00001530| 41 59 20 28 29 0d 52 45 | 53 45 54 20 28 28 73 65 |AY ().RE|SET ((se| |00001540| 6c 66 20 64 61 79 29 29 | 20 20 22 52 65 73 65 74 |lf day))| "Reset| |00001550| 20 73 6c 6f 74 73 20 6f | 6e 20 64 61 79 22 0d 7c | slots o|n day".|| |00001560| 23 0d 0d 0d 0d 28 72 65 | 71 75 69 72 65 20 3a 71 |#....(re|quire :q| |00001570| 75 69 63 6b 64 72 61 77 | 29 0d 0d 3b 3b 5f 5f 5f |uickdraw|)..;;___| |00001580| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |00001590| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |________|________| |000015a0| 5f 5f 5f 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 0d |________|_______.| |000015b0| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |000015c0| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |000015d0| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |000015e0| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 0d 3b 3b 20 |;;;;;;;;|;;;;.;; | |000015f0| 20 4d 41 43 52 4f 53 0d | 3b 3b 0d 0d 28 44 45 46 | MACROS.|;;..(DEF| |00001600| 4d 41 43 52 4f 20 57 49 | 54 48 2d 4e 4f 52 4d 41 |MACRO WI|TH-NORMA| |00001610| 4c 49 5a 45 44 2d 44 41 | 59 20 28 26 62 6f 64 79 |LIZED-DA|Y (&body| |00001620| 20 62 6f 64 79 29 0d 20 | 20 22 4e 6f 72 6d 61 6c | body). | "Normal| |00001630| 69 7a 65 20 74 68 65 20 | 64 61 79 20 74 6f 20 74 |ize the |day to t| |00001640| 68 65 20 6e 75 6d 62 65 | 72 69 6e 67 20 73 63 68 |he numbe|ring sch| |00001650| 65 6d 65 20 77 68 65 72 | 65 20 73 75 6e 64 61 79 |eme wher|e sunday| |00001660| 20 69 73 0d 30 20 72 61 | 74 68 65 72 20 74 68 61 | is.0 ra|ther tha| |00001670| 6e 20 36 20 28 75 67 68 | 29 22 0d 20 20 60 28 6d |n 6 (ugh|)". `(m| |00001680| 75 6c 74 69 70 6c 65 2d | 76 61 6c 75 65 2d 62 69 |ultiple-|value-bi| |00001690| 6e 64 20 28 64 61 79 20 | 73 74 72 69 6e 67 29 0d |nd (day |string).| |000016a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000016b0| 20 20 20 20 20 20 20 2c | 40 62 6f 64 79 0d 20 20 | ,|@body. | |000016c0| 20 20 28 73 65 74 66 20 | 64 61 79 0d 20 20 20 20 | (setf |day. | |000016d0| 20 20 20 20 20 20 28 63 | 61 73 65 20 64 61 79 0d | (c|ase day.| |000016e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 28 36 20 30 | | (6 0| |000016f0| 29 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |) | | |00001700| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; | |00001710| 73 75 6e 64 61 79 0d 20 | 20 20 20 20 20 20 20 20 |sunday. | | |00001720| 20 20 20 28 30 20 31 29 | 20 20 20 20 20 20 20 20 | (0 1)| | |00001730| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00001740| 20 20 20 20 20 3b 20 6d | 6f 6e 64 61 79 0d 20 20 | ; m|onday. | |00001750| 20 20 20 20 20 20 20 20 | 20 20 28 31 20 32 29 20 | | (1 2) | |00001760| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00001770| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 74 75 | | ; tu| |00001780| 65 73 64 61 79 0d 20 20 | 20 20 20 20 20 20 20 20 |esday. | | |00001790| 20 20 28 32 20 33 29 20 | 20 20 20 20 20 20 20 20 | (2 3) | | |000017a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000017b0| 20 20 20 20 3b 20 77 65 | 64 6e 65 73 64 61 79 0d | ; we|dnesday.| |000017c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 28 33 20 34 | | (3 4| |000017d0| 29 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |) | | |000017e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; | |000017f0| 74 68 75 72 73 64 61 79 | 0d 20 20 20 20 20 20 20 |thursday|. | |00001800| 20 20 20 20 20 28 34 20 | 35 29 20 20 20 20 20 20 | (4 |5) | |00001810| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00001820| 20 20 20 20 20 20 20 3b | 20 66 72 69 64 61 79 0d | ;| friday.| |00001830| 20 20 20 20 20 20 20 20 | 20 20 20 20 28 35 20 36 | | (5 6| |00001840| 29 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |) | | |00001850| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; | |00001860| 73 61 74 75 72 64 61 79 | 0d 20 20 20 20 20 20 20 |saturday|. | |00001870| 20 20 20 20 20 29 29 0d | 20 20 20 20 28 73 65 74 | )).| (set| |00001880| 66 20 73 74 72 69 6e 67 | 20 28 63 64 72 20 28 61 |f string| (cdr (a| |00001890| 73 73 6f 63 20 64 61 79 | 20 2a 77 6b 64 61 79 73 |ssoc day| *wkdays| |000018a0| 2a 29 29 29 0d 20 20 20 | 20 28 76 61 6c 75 65 73 |*))). | (values| |000018b0| 20 64 61 79 20 73 74 72 | 69 6e 67 29 29 0d 20 20 | day str|ing)). | |000018c0| 29 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |) | | |000018d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000018e0| 20 20 20 20 20 20 3b 20 | 57 49 54 48 2d 4e 4f 52 | ; |WITH-NOR| |000018f0| 4d 41 4c 49 5a 45 44 2d | 44 41 59 20 0d 0d 28 44 |MALIZED-|DAY ..(D| |00001900| 45 46 4d 41 43 52 4f 20 | 47 45 54 2d 4d 4f 4e 54 |EFMACRO |GET-MONT| |00001910| 48 2d 4e 41 4d 45 20 28 | 6d 6f 6e 74 68 2e 69 6e |H-NAME (|month.in| |00001920| 64 65 78 29 0d 20 20 22 | 52 65 74 75 72 6e 20 74 |dex). "|Return t| |00001930| 68 65 20 6e 61 6d 65 20 | 6f 66 20 74 68 65 20 6d |he name |of the m| |00001940| 6f 6e 74 68 20 67 69 76 | 65 6e 20 74 68 65 20 6d |onth giv|en the m| |00001950| 6f 6e 74 68 20 69 6e 64 | 65 78 22 0d 20 20 28 64 |onth ind|ex". (d| |00001960| 65 63 6c 61 72 65 20 28 | 73 70 65 63 69 61 6c 20 |eclare (|special | |00001970| 2a 6d 6f 6e 74 68 2d 6e | 61 6d 65 73 2a 29 29 0d |*month-n|ames*)).| |00001980| 20 20 60 28 63 64 72 20 | 28 61 73 73 6f 63 20 2c | `(cdr |(assoc ,| |00001990| 6d 6f 6e 74 68 2e 69 6e | 64 65 78 20 2a 6d 6f 6e |month.in|dex *mon| |000019a0| 74 68 2d 6e 61 6d 65 73 | 2a 29 29 0d 20 20 29 20 |th-names|*)). ) | |000019b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000019c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000019d0| 20 20 20 20 3b 20 47 45 | 54 2d 4d 4f 4e 54 48 2d | ; GE|T-MONTH-| |000019e0| 4e 41 4d 45 0d 0d 28 44 | 45 46 4d 41 43 52 4f 20 |NAME..(D|EFMACRO | |000019f0| 47 45 54 2d 44 41 59 2d | 4e 41 4d 45 20 28 64 61 |GET-DAY-|NAME (da| |00001a00| 79 2e 69 6e 64 65 78 29 | 0d 20 20 22 52 65 74 75 |y.index)|. "Retu| |00001a10| 72 6e 20 74 68 65 20 6e | 61 6d 65 20 6f 66 20 74 |rn the n|ame of t| |00001a20| 68 65 20 64 61 79 20 67 | 69 76 65 6e 20 74 68 65 |he day g|iven the| |00001a30| 20 64 61 79 27 73 20 69 | 6e 64 65 78 22 0d 20 20 | day's i|ndex". | |00001a40| 28 64 65 63 6c 61 72 65 | 20 28 73 70 65 63 69 61 |(declare| (specia| |00001a50| 6c 20 2a 77 6b 64 61 79 | 73 2a 29 29 0d 20 20 60 |l *wkday|s*)). `| |00001a60| 28 63 64 72 20 28 61 73 | 73 6f 63 20 2c 64 61 79 |(cdr (as|soc ,day| |00001a70| 2e 69 6e 64 65 78 20 2a | 77 6b 64 61 79 73 2a 29 |.index *|wkdays*)| |00001a80| 29 0d 20 20 29 20 20 20 | 20 20 20 20 20 20 20 20 |). ) | | |00001a90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00001aa0| 20 20 20 20 20 20 20 20 | 20 20 3b 20 47 45 54 2d | | ; GET-| |00001ab0| 44 41 59 2d 4e 41 4d 45 | 0d 0d 3b 3b 3b 3b 3b 3b |DAY-NAME|..;;;;;;| |00001ac0| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00001ad0| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00001ae0| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00001af0| 3b 3b 3b 3b 3b 3b 0d 3b | 3b 20 20 56 41 52 49 41 |;;;;;;.;|; VARIA| |00001b00| 42 4c 45 53 0d 3b 3b 0d | 0d 28 44 45 46 50 41 52 |BLES.;;.|.(DEFPAR| |00001b10| 41 4d 45 54 45 52 20 2a | 77 6b 64 61 79 73 2a 0d |AMETER *|wkdays*.| |00001b20| 20 20 20 20 27 28 28 20 | 30 20 2e 20 22 53 75 6e | '(( |0 . "Sun| |00001b30| 64 61 79 22 29 20 20 28 | 20 31 20 2e 20 22 4d 6f |day") (| 1 . "Mo| |00001b40| 6e 64 61 79 22 29 20 28 | 20 32 20 2e 20 22 54 75 |nday") (| 2 . "Tu| |00001b50| 65 73 64 61 79 22 29 20 | 20 28 20 33 20 2e 20 22 |esday") | ( 3 . "| |00001b60| 57 65 64 6e 65 73 64 61 | 79 22 29 0d 20 20 20 20 |Wednesda|y"). | |00001b70| 20 20 20 28 20 34 20 2e | 20 22 54 68 75 72 73 64 | ( 4 .| "Thursd| |00001b80| 61 79 22 29 20 28 20 35 | 20 2e 20 22 46 72 69 64 |ay") ( 5| . "Frid| |00001b90| 61 79 22 29 20 20 28 20 | 36 20 2e 20 22 53 61 74 |ay") ( |6 . "Sat| |00001ba0| 75 72 64 61 79 22 29 29 | 0d 20 20 20 20 22 41 6e |urday"))|. "An| |00001bb0| 20 61 6c 69 73 74 20 77 | 68 69 63 68 20 67 69 76 | alist w|hich giv| |00001bc0| 65 73 20 74 68 65 20 6e | 61 6d 65 20 6f 66 20 74 |es the n|ame of t| |00001bd0| 68 65 20 77 65 65 6b 64 | 61 79 20 69 6e 64 65 78 |he weekd|ay index| |00001be0| 65 64 20 69 6e 20 61 20 | 72 61 74 69 6f 6e 61 6c |ed in a |rational| |00001bf0| 20 77 61 79 22 29 0d 0d | 28 44 45 46 50 41 52 41 | way")..|(DEFPARA| |00001c00| 4d 45 54 45 52 20 2a 64 | 61 79 73 2d 69 6e 2d 6d |METER *d|ays-in-m| |00001c10| 6f 6e 74 68 2a 20 0d 20 | 20 20 20 27 28 28 20 31 |onth* . | '(( 1| |00001c20| 20 2e 20 33 31 29 20 28 | 20 32 20 2e 20 32 38 29 | . 31) (| 2 . 28)| |00001c30| 20 20 28 20 33 20 2e 20 | 33 31 29 20 20 28 20 34 | ( 3 . |31) ( 4| |00001c40| 20 2e 20 33 30 29 20 20 | 28 20 35 20 2e 20 33 31 | . 30) |( 5 . 31| |00001c50| 29 0d 20 20 20 20 20 20 | 20 28 20 36 20 2e 20 33 |). | ( 6 . 3| |00001c60| 30 29 20 20 28 20 37 20 | 2e 20 33 31 29 20 20 28 |0) ( 7 |. 31) (| |00001c70| 20 38 20 2e 20 33 31 29 | 20 20 28 20 39 20 2e 20 | 8 . 31)| ( 9 . | |00001c80| 33 30 29 20 20 28 20 31 | 30 20 2e 20 33 31 29 20 |30) ( 1|0 . 31) | |00001c90| 20 28 20 31 31 20 2e 20 | 33 30 29 20 20 28 20 31 | ( 11 . |30) ( 1| |00001ca0| 32 20 2e 20 33 31 29 29 | 0d 20 20 20 20 22 41 6e |2 . 31))|. "An| |00001cb0| 20 61 6c 69 73 74 20 77 | 68 69 63 68 20 69 64 65 | alist w|hich ide| |00001cc0| 6e 74 69 66 69 65 73 20 | 74 68 65 20 6e 75 6d 62 |ntifies |the numb| |00001cd0| 65 72 20 6f 66 20 64 61 | 79 73 20 77 69 74 68 20 |er of da|ys with | |00001ce0| 61 20 6d 6f 6e 74 68 20 | 6e 75 6d 62 65 72 22 29 |a month |number")| |00001cf0| 0d 0d 28 44 45 46 50 41 | 52 41 4d 45 54 45 52 20 |..(DEFPA|RAMETER | |00001d00| 2a 6d 6f 6e 74 68 2d 6e | 61 6d 65 73 2a 20 0d 20 |*month-n|ames* . | |00001d10| 20 20 20 27 28 28 20 31 | 20 2e 20 22 4a 61 6e 75 | '(( 1| . "Janu| |00001d20| 61 72 79 22 29 20 20 28 | 20 32 20 2e 20 22 46 65 |ary") (| 2 . "Fe| |00001d30| 62 72 75 61 72 79 22 29 | 20 20 28 20 33 20 2e 20 |bruary")| ( 3 . | |00001d40| 22 4d 61 72 63 68 22 29 | 20 20 28 20 34 20 2e 20 |"March")| ( 4 . | |00001d50| 22 41 70 72 69 6c 22 29 | 0d 20 20 20 20 20 20 20 |"April")|. | |00001d60| 28 20 35 20 2e 20 22 4d | 61 79 22 29 20 20 28 20 |( 5 . "M|ay") ( | |00001d70| 36 20 2e 20 22 4a 75 6e | 65 22 29 20 28 20 37 20 |6 . "Jun|e") ( 7 | |00001d80| 2e 20 22 4a 75 6c 79 22 | 29 20 20 28 20 38 20 2e |. "July"|) ( 8 .| |00001d90| 20 22 41 75 67 75 73 74 | 22 29 0d 20 20 20 20 20 | "August|"). | |00001da0| 20 20 28 20 39 20 2e 20 | 22 53 65 70 74 65 6d 62 | ( 9 . |"Septemb| |00001db0| 65 72 22 29 20 20 28 20 | 31 30 20 2e 20 22 4f 63 |er") ( |10 . "Oc| |00001dc0| 74 6f 62 65 72 22 29 20 | 20 28 20 31 31 20 2e 20 |tober") | ( 11 . | |00001dd0| 22 4e 6f 76 65 6d 62 65 | 72 22 29 20 20 28 20 31 |"Novembe|r") ( 1| |00001de0| 32 20 2e 20 22 44 65 63 | 65 6d 62 65 72 22 29 29 |2 . "Dec|ember"))| |00001df0| 0d 20 20 20 20 22 41 6e | 20 61 6c 69 73 74 20 77 |. "An| alist w| |00001e00| 68 69 63 68 20 72 65 6c | 61 74 65 73 20 74 68 65 |hich rel|ates the| |00001e10| 20 6d 6f 6e 74 68 20 6e | 75 6d 62 65 72 20 77 69 | month n|umber wi| |00001e20| 74 68 20 61 20 73 74 72 | 69 6e 67 22 29 0d 0d 0d |th a str|ing")...| |00001e30| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00001e40| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00001e50| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00001e60| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 0d 3b |;;;;;;;;|;;;;;;.;| |00001e70| 3b 20 20 46 55 4e 43 54 | 49 4f 4e 53 0d 3b 3b 0d |; FUNCT|IONS.;;.| |00001e80| 28 44 45 46 55 4e 20 4c | 45 41 50 2d 59 45 41 52 |(DEFUN L|EAP-YEAR| |00001e90| 2d 50 20 28 79 65 61 72 | 29 0d 20 20 22 52 65 74 |-P (year|). "Ret| |00001ea0| 75 72 6e 20 74 20 69 66 | 20 74 68 69 73 20 69 73 |urn t if| this is| |00001eb0| 20 61 20 6c 65 61 70 20 | 79 65 61 72 22 0d 20 20 | a leap |year". | |00001ec0| 28 69 66 20 28 65 71 20 | 28 6d 6f 64 20 79 65 61 |(if (eq |(mod yea| |00001ed0| 72 20 34 29 0d 20 20 20 | 20 20 20 20 20 20 20 30 |r 4). | 0| |00001ee0| 29 0d 20 20 20 20 74 29 | 0d 20 20 29 20 20 20 20 |). t)|. ) | |00001ef0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00001f00| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00001f10| 20 3b 20 4c 45 41 50 2d | 59 45 41 52 2d 50 0d 0d | ; LEAP-|YEAR-P..| |00001f20| 28 44 45 46 55 4e 20 44 | 41 59 2d 4f 46 2d 59 45 |(DEFUN D|AY-OF-YE| |00001f30| 41 52 20 28 64 61 79 20 | 6d 6f 6e 74 68 20 79 65 |AR (day |month ye| |00001f40| 61 72 29 0d 20 20 22 52 | 65 74 75 72 6e 73 20 61 |ar). "R|eturns a| |00001f50| 20 6e 75 6d 62 65 72 20 | 72 65 70 72 65 73 65 6e | number |represen| |00001f60| 74 69 6e 67 20 74 68 65 | 20 64 61 79 20 6f 66 20 |ting the| day of | |00001f70| 74 68 65 20 79 65 61 72 | 20 77 69 74 68 0d 31 2f |the year| with.1/| |00001f80| 31 2f 79 72 20 62 65 69 | 6e 67 20 31 20 61 6e 64 |1/yr bei|ng 1 and| |00001f90| 20 31 32 2f 33 31 2f 79 | 72 20 62 65 69 6e 67 20 | 12/31/y|r being | |00001fa0| 33 36 35 20 6f 72 20 69 | 66 20 6c 65 61 70 79 65 |365 or i|f leapye| |00001fb0| 61 72 20 33 36 36 22 0d | 20 20 28 6c 6f 6f 70 20 |ar 366".| (loop | |00001fc0| 66 6f 72 20 61 6c 69 73 | 74 20 69 6e 20 2a 64 61 |for alis|t in *da| |00001fd0| 79 73 2d 69 6e 2d 6d 6f | 6e 74 68 2a 0d 20 20 20 |ys-in-mo|nth*. | |00001fe0| 20 20 20 20 20 66 6f 72 | 20 6d 20 66 72 6f 6d 20 | for| m from | |00001ff0| 31 20 74 6f 20 28 2d 20 | 6d 6f 6e 74 68 20 31 29 |1 to (- |month 1)| |00002000| 0d 20 20 20 20 20 20 20 | 20 77 69 74 68 20 28 73 |. | with (s| |00002010| 75 6d 20 6c 65 61 70 79 | 65 61 72 3f 29 0d 20 20 |um leapy|ear?). | |00002020| 20 20 20 20 20 20 69 6e | 69 74 69 61 6c 6c 79 20 | in|itially | |00002030| 28 73 65 74 66 20 73 75 | 6d 20 30 0d 20 20 20 20 |(setf su|m 0. | |00002040| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002050| 20 20 20 20 20 20 20 20 | 20 6c 65 61 70 79 65 61 | | leapyea| |00002060| 72 3f 20 28 6c 65 61 70 | 2d 79 65 61 72 2d 70 20 |r? (leap|-year-p | |00002070| 79 65 61 72 29 29 0d 20 | 20 20 20 20 20 20 20 64 |year)). | d| |00002080| 6f 0d 20 20 20 20 20 20 | 20 20 28 73 65 74 66 20 |o. | (setf | |00002090| 73 75 6d 20 28 2b 20 73 | 75 6d 20 28 69 66 20 28 |sum (+ s|um (if (| |000020a0| 61 6e 64 20 28 3d 20 6d | 20 32 29 0d 20 20 20 20 |and (= m| 2). | |000020b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000020c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 6c 65 | | le| |000020d0| 61 70 79 65 61 72 3f 29 | 0d 20 20 20 20 20 20 20 |apyear?)|. | |000020e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000020f0| 20 20 20 20 28 2b 20 28 | 63 64 72 20 61 6c 69 73 | (+ (|cdr alis| |00002100| 74 29 20 31 29 0d 20 20 | 20 20 20 20 20 20 20 20 |t) 1). | | |00002110| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002120| 20 28 63 64 72 20 61 6c | 69 73 74 29 29 29 29 0d | (cdr al|ist)))).| |00002130| 20 20 20 20 20 20 20 20 | 66 69 6e 61 6c 6c 79 0d | |finally.| |00002140| 20 20 20 20 20 20 20 20 | 28 72 65 74 75 72 6e 0d | |(return.| |00002150| 20 20 20 20 20 20 20 20 | 20 28 2b 20 73 75 6d 20 | | (+ sum | |00002160| 64 61 79 29 29 29 0d 20 | 20 29 20 20 20 20 20 20 |day))). | ) | |00002170| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002180| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;| |00002190| 20 44 41 59 2d 4f 46 2d | 59 45 41 52 0d 0d 28 44 | DAY-OF-|YEAR..(D| |000021a0| 45 46 55 4e 20 44 41 59 | 2d 4f 46 2d 57 45 45 4b |EFUN DAY|-OF-WEEK| |000021b0| 20 28 75 6e 69 76 65 72 | 73 61 6c 2e 74 69 6d 65 | (univer|sal.time| |000021c0| 29 0d 20 20 22 52 65 74 | 75 72 6e 20 76 61 6c 75 |). "Ret|urn valu| |000021d0| 65 73 20 6f 66 20 74 68 | 65 20 64 61 79 20 6f 66 |es of th|e day of| |000021e0| 20 74 68 65 20 77 65 65 | 6b 20 61 6e 64 20 74 68 | the wee|k and th| |000021f0| 65 20 64 61 79 20 61 73 | 20 61 0d 73 74 72 69 6e |e day as| a.strin| |00002200| 67 20 66 6f 72 20 74 68 | 65 20 75 6e 69 76 65 72 |g for th|e univer| |00002210| 73 61 6c 20 74 69 6d 65 | 20 70 61 73 73 65 64 20 |sal time| passed | |00002220| 69 6e 2e 20 20 44 61 79 | 73 20 61 72 65 20 6e 75 |in. Day|s are nu| |00002230| 6d 62 65 72 65 64 0d 77 | 69 74 68 20 73 75 6e 64 |mbered.w|ith sund| |00002240| 61 79 20 3d 20 30 22 0d | 20 20 28 77 69 74 68 2d |ay = 0".| (with-| |00002250| 6e 6f 72 6d 61 6c 69 7a | 65 64 2d 64 61 79 20 0d |normaliz|ed-day .| |00002260| 20 20 20 20 28 6d 75 6c | 74 69 70 6c 65 2d 76 61 | (mul|tiple-va| |00002270| 6c 75 65 2d 62 69 6e 64 | 20 28 73 65 63 20 6d 69 |lue-bind| (sec mi| |00002280| 6e 20 68 72 20 64 61 74 | 65 20 6d 6f 6e 74 68 20 |n hr dat|e month | |00002290| 79 72 20 64 61 79 0d 20 | 20 20 20 20 20 20 20 20 |yr day. | | |000022a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000022b0| 20 20 20 64 61 79 6c 69 | 67 68 74 3f 20 7a 6f 6e | dayli|ght? zon| |000022c0| 65 29 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |e). | | |000022d0| 20 20 20 20 20 20 20 20 | 20 20 28 64 65 63 6f 64 | | (decod| |000022e0| 65 2d 75 6e 69 76 65 72 | 73 61 6c 2d 74 69 6d 65 |e-univer|sal-time| |000022f0| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | | |00002300| 20 20 20 20 20 20 20 20 | 20 75 6e 69 76 65 72 73 | | univers| |00002310| 61 6c 2e 74 69 6d 65 29 | 0d 20 20 20 20 28 64 65 |al.time)|. (de| |00002320| 63 6c 61 72 65 20 28 69 | 67 6e 6f 72 65 20 73 65 |clare (i|gnore se| |00002330| 63 20 6d 69 6e 20 68 72 | 20 64 61 74 65 20 6d 6f |c min hr| date mo| |00002340| 6e 74 68 20 79 72 0d 20 | 20 20 20 20 20 20 20 20 |nth yr. | | |00002350| 20 20 20 20 20 20 20 20 | 20 20 20 20 64 61 79 6c | | dayl| |00002360| 69 67 68 74 3f 20 7a 6f | 6e 65 29 29 0d 20 20 20 |ight? zo|ne)). | |00002370| 20 28 76 61 6c 75 65 73 | 20 64 61 79 20 28 67 65 | (values| day (ge| |00002380| 74 2d 64 61 79 2d 6e 61 | 6d 65 20 64 61 79 29 29 |t-day-na|me day))| |00002390| 29 0d 20 20 29 0d 20 20 | 29 20 20 20 20 20 20 20 |). ). |) | |000023a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000023b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; | |000023c0| 44 41 59 2d 4f 46 2d 57 | 45 45 4b 0d 0d 28 44 45 |DAY-OF-W|EEK..(DE| |000023d0| 46 55 4e 20 46 49 52 53 | 54 2d 44 41 59 2d 4f 46 |FUN FIRS|T-DAY-OF| |000023e0| 2d 4d 4f 4e 54 48 20 28 | 6d 6f 6e 74 68 20 79 65 |-MONTH (|month ye| |000023f0| 61 72 29 0d 20 20 22 52 | 65 74 75 72 6e 20 74 68 |ar). "R|eturn th| |00002400| 65 20 66 69 72 73 74 20 | 64 61 79 20 6f 66 20 74 |e first |day of t| |00002410| 68 65 20 6d 6f 6e 74 68 | 20 66 6f 72 20 74 68 65 |he month| for the| |00002420| 20 67 69 76 65 6e 20 79 | 65 61 72 22 0d 20 20 28 | given y|ear". (| |00002430| 6d 75 6c 74 69 70 6c 65 | 2d 76 61 6c 75 65 2d 62 |multiple|-value-b| |00002440| 69 6e 64 20 28 64 61 79 | 20 73 74 72 69 6e 67 29 |ind (day| string)| |00002450| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | | |00002460| 20 20 20 20 20 20 20 20 | 28 44 41 59 2d 4f 46 2d | |(DAY-OF-| |00002470| 57 45 45 4b 0d 20 20 20 | 20 20 20 20 20 20 20 20 |WEEK. | | |00002480| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 28 65 6e | | (en| |00002490| 63 6f 64 65 2d 75 6e 69 | 76 65 72 73 61 6c 2d 74 |code-uni|versal-t| |000024a0| 69 6d 65 20 30 20 30 20 | 30 20 31 20 6d 6f 6e 74 |ime 0 0 |0 1 mont| |000024b0| 68 20 79 65 61 72 29 29 | 0d 20 20 20 20 28 76 61 |h year))|. (va| |000024c0| 6c 75 65 73 20 64 61 79 | 20 73 74 72 69 6e 67 29 |lues day| string)| |000024d0| 29 0d 20 20 29 20 20 20 | 20 20 20 20 20 20 20 20 |). ) | | |000024e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000024f0| 20 20 20 20 20 20 20 20 | 20 20 3b 20 46 49 52 53 | | ; FIRS| |00002500| 54 2d 44 41 59 2d 4f 46 | 2d 4d 4f 4e 54 48 0d 0d |T-DAY-OF|-MONTH..| |00002510| 28 44 45 46 55 4e 20 4c | 41 53 54 2d 44 41 59 2d |(DEFUN L|AST-DAY-| |00002520| 4f 46 2d 4d 4f 4e 54 48 | 20 28 6d 6f 6e 74 68 20 |OF-MONTH| (month | |00002530| 79 65 61 72 29 0d 20 20 | 20 20 22 52 65 74 75 72 |year). | "Retur| |00002540| 6e 20 74 68 65 20 6c 61 | 73 74 20 64 61 79 20 6f |n the la|st day o| |00002550| 66 20 74 68 65 20 6d 6f | 6e 74 68 20 66 6f 72 20 |f the mo|nth for | |00002560| 61 20 67 69 76 65 6e 20 | 79 65 61 72 22 0d 20 20 |a given |year". | |00002570| 20 28 6d 75 6c 74 69 70 | 6c 65 2d 76 61 6c 75 65 | (multip|le-value| |00002580| 2d 62 69 6e 64 20 28 64 | 61 79 20 73 74 72 69 6e |-bind (d|ay strin| |00002590| 67 29 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |g). | | |000025a0| 20 20 20 20 20 20 20 20 | 20 20 28 44 41 59 2d 4f | | (DAY-O| |000025b0| 46 2d 57 45 45 4b 0d 20 | 20 20 20 20 20 20 20 20 |F-WEEK. | | |000025c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 28 | | (| |000025d0| 65 6e 63 6f 64 65 2d 75 | 6e 69 76 65 72 73 61 6c |encode-u|niversal| |000025e0| 2d 74 69 6d 65 20 30 20 | 30 20 30 20 28 64 61 79 |-time 0 |0 0 (day| |000025f0| 73 2d 69 6e 2d 6d 6f 6e | 74 68 20 6d 6f 6e 74 68 |s-in-mon|th month| |00002600| 20 79 65 61 72 29 0d 20 | 20 20 20 20 20 20 20 20 | year). | | |00002610| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002620| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002630| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002640| 20 20 20 20 6d 6f 6e 74 | 68 20 79 65 61 72 29 29 | mont|h year))| |00002650| 0d 20 20 20 20 28 76 61 | 6c 75 65 73 20 64 61 79 |. (va|lues day| |00002660| 20 73 74 72 69 6e 67 29 | 29 0d 20 20 20 29 20 20 | string)|). ) | |00002670| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002680| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002690| 20 20 3b 20 20 4c 41 53 | 54 2d 44 41 59 2d 4f 46 | ; LAS|T-DAY-OF| |000026a0| 2d 4d 4f 4e 54 48 0d 0d | 28 44 45 46 55 4e 20 50 |-MONTH..|(DEFUN P| |000026b0| 52 45 56 49 4f 55 53 2d | 4d 4f 4e 54 48 20 28 63 |REVIOUS-|MONTH (c| |000026c0| 75 72 72 65 6e 74 2d 6d | 6f 6e 74 68 29 0d 20 20 |urrent-m|onth). | |000026d0| 20 20 22 52 65 74 75 72 | 6e 20 74 68 65 20 70 72 | "Retur|n the pr| |000026e0| 65 76 69 6f 75 73 20 6d | 6f 6e 74 68 22 20 0d 20 |evious m|onth" . | |000026f0| 20 20 20 28 69 66 20 28 | 3d 20 63 75 72 72 65 6e | (if (|= curren| |00002700| 74 2d 6d 6f 6e 74 68 20 | 31 29 0d 20 20 20 20 20 |t-month |1). | |00002710| 20 20 31 32 0d 20 20 20 | 20 20 20 28 31 2d 20 63 | 12. | (1- c| |00002720| 75 72 72 65 6e 74 2d 6d | 6f 6e 74 68 29 29 0d 20 |urrent-m|onth)). | |00002730| 20 20 20 29 20 20 20 20 | 20 20 20 20 20 20 20 20 | ) | | |00002740| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002750| 20 20 20 20 20 20 20 3b | 20 20 50 52 45 56 49 4f | ;| PREVIO| |00002760| 55 53 2d 4d 4f 4e 54 48 | 0d 0d 28 44 45 46 55 4e |US-MONTH|..(DEFUN| |00002770| 20 4e 45 58 54 2d 4d 4f | 4e 54 48 20 28 63 75 72 | NEXT-MO|NTH (cur| |00002780| 72 65 6e 74 2d 6d 6f 6e | 74 68 29 0d 20 20 20 20 |rent-mon|th). | |00002790| 22 52 65 74 75 72 6e 20 | 74 68 65 20 6e 65 78 74 |"Return |the next| |000027a0| 20 6d 6f 6e 74 68 22 0d | 20 20 20 20 28 69 66 20 | month".| (if | |000027b0| 28 3d 20 63 75 72 72 65 | 6e 74 2d 6d 6f 6e 74 68 |(= curre|nt-month| |000027c0| 20 31 32 29 0d 20 20 20 | 20 20 20 20 31 0d 20 20 | 12). | 1. | |000027d0| 20 20 20 20 20 28 31 2b | 20 63 75 72 72 65 6e 74 | (1+| current| |000027e0| 2d 6d 6f 6e 74 68 29 29 | 0d 20 20 20 20 29 20 20 |-month))|. ) | |000027f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002800| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002810| 20 3b 20 20 4e 45 58 54 | 2d 4d 4f 4e 54 48 20 0d | ; NEXT|-MONTH .| |00002820| 0d 28 44 45 46 55 4e 20 | 44 41 59 53 2d 54 4f 2d |.(DEFUN |DAYS-TO-| |00002830| 50 52 45 50 45 4e 44 20 | 28 63 75 72 72 65 6e 74 |PREPEND |(current| |00002840| 2d 6d 6f 6e 74 68 20 63 | 75 72 72 65 6e 74 2d 79 |-month c|urrent-y| |00002850| 65 61 72 20 26 61 75 78 | 20 64 61 79 31 29 0d 20 |ear &aux| day1). | |00002860| 20 20 20 22 52 65 74 75 | 72 6e 20 61 20 6c 69 73 | "Retu|rn a lis| |00002870| 74 20 6f 66 20 64 61 79 | 73 20 74 6f 20 70 72 65 |t of day|s to pre| |00002880| 70 65 6e 64 20 74 6f 20 | 74 68 65 20 63 75 72 72 |pend to |the curr| |00002890| 65 6e 74 20 6d 6f 6e 74 | 68 27 73 20 63 61 6c 65 |ent mont|h's cale| |000028a0| 6e 64 61 72 22 0d 20 20 | 20 20 3b 3b 20 20 64 65 |ndar". | ;; de| |000028b0| 74 65 72 6d 69 6e 65 20 | 74 68 65 20 64 61 79 20 |termine |the day | |000028c0| 6f 66 20 74 68 65 20 77 | 65 65 6b 20 74 68 61 74 |of the w|eek that| |000028d0| 20 77 65 20 62 65 67 69 | 6e 20 74 68 65 20 63 75 | we begi|n the cu| |000028e0| 72 72 65 6e 74 20 6d 6f | 6e 74 68 20 3d 20 6e 0d |rrent mo|nth = n.| |000028f0| 20 20 20 20 3b 3b 20 20 | 74 68 65 6e 20 67 65 74 | ;; |then get| |00002900| 20 74 68 65 20 6c 61 73 | 74 20 6e 20 64 61 79 73 | the las|t n days| |00002910| 20 6f 66 20 74 68 65 20 | 70 72 65 76 69 6f 75 73 | of the |previous| |00002920| 20 6d 6f 6e 74 68 0d 20 | 20 20 20 28 75 6e 6c 65 | month. | (unle| |00002930| 73 73 20 28 3d 20 28 73 | 65 74 66 20 64 61 79 31 |ss (= (s|etf day1| |00002940| 20 28 66 69 72 73 74 2d | 64 61 79 2d 6f 66 2d 6d | (first-|day-of-m| |00002950| 6f 6e 74 68 20 63 75 72 | 72 65 6e 74 2d 6d 6f 6e |onth cur|rent-mon| |00002960| 74 68 20 63 75 72 72 65 | 6e 74 2d 79 65 61 72 29 |th curre|nt-year)| |00002970| 29 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |). | | |00002980| 20 20 20 20 20 20 30 29 | 20 3b 3b 20 20 30 20 69 | 0)| ;; 0 i| |00002990| 73 20 53 75 6e 64 61 79 | 0d 20 20 20 20 20 20 20 |s Sunday|. | |000029a0| 28 6c 65 74 2a 20 28 28 | 62 65 67 69 6e 6e 69 6e |(let* ((|beginnin| |000029b0| 67 2e 64 61 79 20 64 61 | 79 31 29 0d 20 20 20 20 |g.day da|y1). | |000029c0| 20 20 20 20 20 20 20 20 | 20 20 28 64 61 79 73 2e | | (days.| |000029d0| 69 6e 2e 70 72 65 76 69 | 6f 75 73 2e 6d 6f 6e 74 |in.previ|ous.mont| |000029e0| 68 20 28 64 61 79 73 2d | 69 6e 2d 6d 6f 6e 74 68 |h (days-|in-month| |000029f0| 20 28 70 72 65 76 69 6f | 75 73 2d 6d 6f 6e 74 68 | (previo|us-month| |00002a00| 20 63 75 72 72 65 6e 74 | 2d 6d 6f 6e 74 68 29 0d | current|-month).| |00002a10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002a20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002a30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002a40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002a50| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 63 | | c| |00002a60| 75 72 72 65 6e 74 2d 79 | 65 61 72 29 29 0d 20 20 |urrent-y|ear)). | |00002a70| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 28 | | (| |00002a80| 64 61 79 73 20 6e 69 6c | 29 29 0d 20 20 20 20 20 |days nil|)). | |00002a90| 20 20 20 20 20 28 64 6f | 74 69 6d 65 73 20 28 64 | (do|times (d| |00002aa0| 61 79 20 62 65 67 69 6e | 6e 69 6e 67 2e 64 61 79 |ay begin|ning.day| |00002ab0| 20 64 61 79 73 29 0d 20 | 20 20 20 20 20 20 20 20 | days). | | |00002ac0| 20 20 20 20 28 73 65 74 | 66 20 64 61 79 73 20 28 | (set|f days (| |00002ad0| 63 6f 6e 73 20 28 2d 20 | 64 61 79 73 2e 69 6e 2e |cons (- |days.in.| |00002ae0| 70 72 65 76 69 6f 75 73 | 2e 6d 6f 6e 74 68 20 64 |previous|.month d| |00002af0| 61 79 29 20 64 61 79 73 | 29 29 29 29 0d 20 20 20 |ay) days|)))). | |00002b00| 20 20 20 20 29 0d 20 20 | 20 20 29 20 20 20 20 20 | ). | ) | |00002b10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002b20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; | |00002b30| 44 41 59 53 2d 54 4f 2d | 50 52 45 50 45 4e 44 0d |DAYS-TO-|PREPEND.| |00002b40| 0d 28 44 45 46 55 4e 20 | 44 41 59 53 2d 54 4f 2d |.(DEFUN |DAYS-TO-| |00002b50| 41 50 50 45 4e 44 20 28 | 63 75 72 72 65 6e 74 2d |APPEND (|current-| |00002b60| 6d 6f 6e 74 68 20 63 75 | 72 72 65 6e 74 2d 79 65 |month cu|rrent-ye| |00002b70| 61 72 29 0d 20 20 20 20 | 22 72 65 74 75 72 6e 20 |ar). |"return | |00002b80| 61 20 6c 69 73 74 20 6f | 66 20 64 61 79 73 20 74 |a list o|f days t| |00002b90| 6f 20 61 70 70 65 6e 64 | 20 74 6f 20 74 68 65 20 |o append| to the | |00002ba0| 63 75 72 72 65 6e 74 20 | 6d 6f 6e 74 68 27 73 20 |current |month's | |00002bb0| 63 61 6c 65 6e 64 61 72 | 22 0d 20 20 20 20 28 6c |calendar|". (l| |00002bc0| 65 74 20 28 28 74 6f 74 | 61 6c 2e 64 61 79 73 20 |et ((tot|al.days | |00002bd0| 28 2b 20 20 28 6c 65 6e | 67 74 68 0d 20 20 20 20 |(+ (len|gth. | |00002be0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002bf0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002c00| 28 64 61 79 73 2d 74 6f | 2d 70 72 65 70 65 6e 64 |(days-to|-prepend| |00002c10| 20 63 75 72 72 65 6e 74 | 2d 6d 6f 6e 74 68 20 63 | current|-month c| |00002c20| 75 72 72 65 6e 74 2d 79 | 65 61 72 29 29 0d 20 20 |urrent-y|ear)). | |00002c30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002c40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002c50| 20 28 64 61 79 73 2d 69 | 6e 2d 6d 6f 6e 74 68 20 | (days-i|n-month | |00002c60| 63 75 72 72 65 6e 74 2d | 6d 6f 6e 74 68 20 63 75 |current-|month cu| |00002c70| 72 72 65 6e 74 2d 79 65 | 61 72 29 29 29 0d 20 20 |rrent-ye|ar))). | |00002c80| 20 20 20 20 20 20 20 20 | 20 20 28 64 61 79 73 20 | | (days | |00002c90| 6e 69 6c 29 29 0d 20 20 | 20 20 20 20 20 28 64 6f |nil)). | (do| |00002ca0| 74 69 6d 65 73 20 28 64 | 61 79 20 28 2d 20 34 32 |times (d|ay (- 42| |00002cb0| 20 20 74 6f 74 61 6c 2e | 64 61 79 73 29 20 28 72 | total.|days) (r| |00002cc0| 65 76 65 72 73 65 20 64 | 61 79 73 29 29 0d 20 20 |everse d|ays)). | |00002cd0| 20 20 20 20 20 20 20 20 | 28 73 65 74 66 20 64 61 | |(setf da| |00002ce0| 79 73 20 28 63 6f 6e 73 | 20 28 31 2b 20 64 61 79 |ys (cons| (1+ day| |00002cf0| 29 20 64 61 79 73 29 29 | 29 29 0d 20 20 20 20 29 |) days))|)). )| |00002d00| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002d10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002d20| 20 20 20 3b 20 44 41 59 | 53 2d 54 4f 2d 41 50 50 | ; DAY|S-TO-APP| |00002d30| 45 4e 44 0d 0d 28 44 45 | 46 55 4e 20 4d 4f 4e 54 |END..(DE|FUN MONT| |00002d40| 48 2d 59 52 20 28 29 0d | 20 20 3b 3b 20 20 72 65 |H-YR ().| ;; re| |00002d50| 74 75 72 6e 20 61 20 6c | 69 73 74 20 6f 66 20 74 |turn a l|ist of t| |00002d60| 68 65 20 63 75 72 72 65 | 6e 74 20 6d 6f 6e 74 68 |he curre|nt month| |00002d70| 20 61 6e 64 20 79 65 61 | 72 20 0d 20 20 28 6d 75 | and yea|r . (mu| |00002d80| 6c 74 69 70 6c 65 2d 76 | 61 6c 75 65 2d 62 69 6e |ltiple-v|alue-bin| |00002d90| 64 20 28 73 65 63 20 6d | 69 6e 20 68 72 20 64 61 |d (sec m|in hr da| |00002da0| 74 65 20 6d 6f 6e 74 68 | 20 79 72 20 64 61 79 0d |te month| yr day.| |00002db0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002dc0| 20 20 20 20 20 20 20 20 | 20 20 20 20 64 61 79 6c | | dayl| |00002dd0| 69 67 68 74 3f 20 7a 6f | 6e 65 29 0d 20 20 20 20 |ight? zo|ne). | |00002de0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002df0| 20 20 20 28 64 65 63 6f | 64 65 2d 75 6e 69 76 65 | (deco|de-unive| |00002e00| 72 73 61 6c 2d 74 69 6d | 65 0d 20 20 20 20 20 20 |rsal-tim|e. | |00002e10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002e20| 20 20 28 67 65 74 2d 75 | 6e 69 76 65 72 73 61 6c | (get-u|niversal| |00002e30| 2d 74 69 6d 65 29 29 0d | 20 20 20 20 28 64 65 63 |-time)).| (dec| |00002e40| 6c 61 72 65 20 28 69 67 | 6e 6f 72 65 20 73 65 63 |lare (ig|nore sec| |00002e50| 20 6d 69 6e 20 68 72 20 | 64 61 79 20 64 61 74 65 | min hr |day date| |00002e60| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | | |00002e70| 20 20 20 20 20 20 64 61 | 79 6c 69 67 68 74 3f 20 | da|ylight? | |00002e80| 7a 6f 6e 65 29 29 0d 20 | 20 20 20 28 6c 69 73 74 |zone)). | (list| |00002e90| 20 6d 6f 6e 74 68 20 79 | 72 29 0d 20 20 20 20 29 | month y|r). )| |00002ea0| 0d 20 20 29 20 20 20 20 | 20 20 20 20 20 20 20 20 |. ) | | |00002eb0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002ec0| 20 20 20 20 20 20 20 20 | 20 3b 20 4d 4f 4e 54 48 | | ; MONTH| |00002ed0| 2d 59 52 0d 0d 28 44 45 | 46 55 4e 20 44 41 59 53 |-YR..(DE|FUN DAYS| |00002ee0| 2d 49 4e 2d 4d 4f 4e 54 | 48 20 28 6d 6f 6e 74 68 |-IN-MONT|H (month| |00002ef0| 20 79 65 61 72 29 0d 20 | 20 22 52 65 74 75 72 6e | year). | "Return| |00002f00| 20 74 68 65 20 6e 75 6d | 62 65 72 20 6f 66 20 64 | the num|ber of d| |00002f10| 61 79 73 20 69 6e 20 74 | 68 65 20 6d 6f 6e 74 68 |ays in t|he month| |00002f20| 20 63 6f 72 72 65 63 74 | 69 6e 67 20 66 6f 72 0d | correct|ing for.| |00002f30| 6c 65 61 70 20 79 65 61 | 72 22 0d 20 20 28 6c 65 |leap yea|r". (le| |00002f40| 74 20 28 28 64 61 79 73 | 20 28 63 64 72 20 28 61 |t ((days| (cdr (a| |00002f50| 73 73 6f 63 20 6d 6f 6e | 74 68 20 2a 64 61 79 73 |ssoc mon|th *days| |00002f60| 2d 69 6e 2d 6d 6f 6e 74 | 68 2a 29 29 29 29 0d 20 |-in-mont|h*)))). | |00002f70| 20 20 20 28 69 66 20 28 | 61 6e 64 20 28 65 71 20 | (if (|and (eq | |00002f80| 6d 6f 6e 74 68 20 32 29 | 0d 20 20 20 20 20 20 20 |month 2)|. | |00002f90| 20 20 20 20 20 20 28 6c | 65 61 70 2d 79 65 61 72 | (l|eap-year| |00002fa0| 2d 70 20 79 65 61 72 29 | 29 0d 20 20 20 20 20 20 |-p year)|). | |00002fb0| 28 73 65 74 66 20 64 61 | 79 73 20 28 2b 20 31 20 |(setf da|ys (+ 1 | |00002fc0| 64 61 79 73 29 29 29 0d | 20 20 20 20 64 61 79 73 |days))).| days| |00002fd0| 29 0d 20 20 29 20 20 20 | 20 20 20 20 20 20 20 20 |). ) | | |00002fe0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00002ff0| 20 20 20 20 20 20 20 20 | 20 20 3b 20 44 41 59 53 | | ; DAYS| |00003000| 2d 49 4e 2d 4d 4f 4e 54 | 48 0d 0d 3b 3b 3b 3b 3b |-IN-MONT|H..;;;;;| |00003010| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00003020| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00003030| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00003040| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 0d 3b 3b 3b 20 20 |;;;;;;;;|;;.;;; | |00003050| 43 4c 41 53 53 45 53 0d | 3b 3b 3b 0d 3b 3b 3b 3b |CLASSES.|;;;.;;;;| |00003060| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00003070| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00003080| 3b 3b 3b 3b 3b 3b 3b 3b | 3b 3b 3b 3b 3b 3b 3b 3b |;;;;;;;;|;;;;;;;;| |00003090| 3b 3b 3b 3b 3b 3b 3b 3b | 0d 3b 3b 3b 20 20 54 68 |;;;;;;;;|.;;; Th| |000030a0| 65 20 63 6c 61 73 73 20 | 4d 4f 4e 54 48 2d 43 41 |e class |MONTH-CA| |000030b0| 4c 45 4e 44 41 52 20 69 | 73 20 61 20 73 65 71 75 |LENDAR i|s a sequ| |000030c0| 65 6e 63 65 20 64 69 61 | 6c 6f 67 20 69 74 65 6d |ence dia|log item| |000030d0| 0d 3b 3b 3b 0d 3b 3b 3b | 0d 28 44 45 46 43 4c 41 |.;;;.;;;|.(DEFCLA| |000030e0| 53 53 20 4d 4f 4e 54 48 | 2d 43 41 4c 45 4e 44 41 |SS MONTH|-CALENDA| |000030f0| 52 20 28 53 45 51 55 45 | 4e 43 45 2d 44 49 41 4c |R (SEQUE|NCE-DIAL| |00003100| 4f 47 2d 49 54 45 4d 29 | 0d 20 20 28 28 6d 6f 6e |OG-ITEM)|. ((mon| |00003110| 74 68 20 3a 69 6e 69 74 | 66 6f 72 6d 20 4e 49 4c |th :init|form NIL| |00003120| 20 3a 69 6e 69 74 61 72 | 67 20 3a 6d 6f 6e 74 68 | :initar|g :month| |00003130| 20 3a 61 63 63 65 73 73 | 6f 72 20 6d 6f 6e 74 68 | :access|or month| |00003140| 29 0d 20 20 20 28 79 65 | 61 72 20 3a 69 6e 69 74 |). (ye|ar :init| |00003150| 66 6f 72 6d 20 4e 49 4c | 20 3a 69 6e 69 74 61 72 |form NIL| :initar| |00003160| 67 20 3a 79 65 61 72 20 | 3a 61 63 63 65 73 73 6f |g :year |:accesso| |00003170| 72 20 79 65 61 72 29 0d | 20 20 20 28 6d 6f 6e 74 |r year).| (mont| |00003180| 68 2d 64 61 79 73 20 3a | 69 6e 69 74 66 6f 72 6d |h-days :|initform| |00003190| 20 6e 69 6c 20 3a 69 6e | 69 74 61 72 67 20 3a 6d | nil :in|itarg :m| |000031a0| 6f 6e 74 68 2d 64 61 79 | 73 20 3a 61 63 63 65 73 |onth-day|s :acces| |000031b0| 73 6f 72 20 6d 6f 6e 74 | 68 2d 64 61 79 73 29 0d |sor mont|h-days).| |000031c0| 20 20 20 3b 3b 20 20 74 | 68 69 73 20 69 73 20 61 | ;; t|his is a| |000031d0| 6e 20 61 6c 69 73 74 20 | 65 61 63 68 20 65 6c 65 |n alist |each ele| |000031e0| 6d 65 6e 74 20 68 61 73 | 20 74 68 65 20 63 65 6c |ment has| the cel| |000031f0| 6c 20 61 6e 64 20 74 68 | 65 0d 20 20 20 3b 3b 20 |l and th|e. ;; | |00003200| 20 64 61 79 20 6f 62 6a | 65 63 74 20 77 68 69 63 | day obj|ect whic| |00003210| 68 20 74 68 65 20 63 65 | 6c 6c 20 72 65 70 72 65 |h the ce|ll repre| |00003220| 73 65 6e 74 73 0d 20 20 | 20 28 66 69 6c 6c 2e 61 |sents. | (fill.a| |00003230| 6c 6c 20 3a 69 6e 69 74 | 66 6f 72 6d 20 4e 49 4c |ll :init|form NIL| |00003240| 20 3a 69 6e 69 74 61 72 | 67 20 3a 66 69 6c 6c 2e | :initar|g :fill.| |00003250| 61 6c 6c 20 3a 61 63 63 | 65 73 73 6f 72 20 66 69 |all :acc|essor fi| |00003260| 6c 6c 2e 61 6c 6c 29 0d | 20 20 20 3b 3b 20 20 63 |ll.all).| ;; c| |00003270| 6f 6e 74 72 6f 6c 73 20 | 77 68 65 74 68 65 72 20 |ontrols |whether | |00003280| 77 65 20 73 65 65 20 74 | 68 65 20 6c 61 73 74 20 |we see t|he last | |00003290| 70 61 72 74 20 6f 66 20 | 74 68 65 20 6c 61 73 74 |part of |the last| |000032a0| 20 6d 6f 6e 74 68 20 61 | 6e 64 20 74 68 65 0d 20 | month a|nd the. | |000032b0| 20 20 3b 3b 20 66 69 72 | 73 74 20 70 61 72 74 20 | ;; fir|st part | |000032c0| 6f 66 20 74 68 65 20 6e | 65 78 74 20 6d 6f 6e 74 |of the n|ext mont| |000032d0| 68 0d 20 20 20 29 0d 20 | 20 28 3a 64 65 66 61 75 |h. ). | (:defau| |000032e0| 6c 74 2d 69 6e 69 74 61 | 72 67 73 0d 20 20 20 20 |lt-inita|rgs. | |000032f0| 3a 6d 6f 6e 74 68 20 28 | 63 61 72 20 28 6d 6f 6e |:month (|car (mon| |00003300| 74 68 2d 79 72 29 29 0d | 20 20 20 20 3a 79 65 61 |th-yr)).| :yea| |00003310| 72 20 28 63 61 64 72 20 | 28 6d 6f 6e 74 68 2d 79 |r (cadr |(month-y| |00003320| 72 29 29 0d 20 20 20 20 | 3a 66 69 6c 6c 2e 61 6c |r)). |:fill.al| |00003330| 6c 20 4e 49 4c 0d 20 20 | 20 20 3a 76 69 65 77 2d |l NIL. | :view-| |00003340| 73 69 7a 65 20 23 40 28 | 34 30 30 20 33 35 30 29 |size #@(|400 350)| |00003350| 0d 20 20 20 20 3a 76 69 | 65 77 2d 70 6f 73 69 74 |. :vi|ew-posit| |00003360| 69 6f 6e 20 23 40 28 35 | 20 35 29 0d 20 20 20 20 |ion #@(5| 5). | |00003370| 3a 76 69 65 77 2d 66 6f | 6e 74 20 27 28 22 4d 6f |:view-fo|nt '("Mo| |00003380| 6e 61 63 6f 22 20 31 30 | 20 3a 70 6c 61 69 6e 29 |naco" 10| :plain)| |00003390| 0d 20 20 20 20 3a 73 65 | 71 75 65 6e 63 65 2d 6f |. :se|quence-o| |000033a0| 72 64 65 72 20 3a 68 6f | 72 69 7a 6f 6e 74 61 6c |rder :ho|rizontal| |000033b0| 0d 20 20 20 20 3a 73 65 | 71 75 65 6e 63 65 2d 77 |. :se|quence-w| |000033c0| 72 61 70 2d 6c 65 6e 67 | 74 68 20 37 0d 20 20 20 |rap-leng|th 7. | |000033d0| 20 3a 54 41 42 4c 45 2d | 48 53 43 52 4f 4c 4c 50 | :TABLE-|HSCROLLP| |000033e0| 20 4e 49 4c 0d 20 20 20 | 20 3a 54 41 42 4c 45 2d | NIL. | :TABLE-| |000033f0| 56 53 43 52 4f 4c 4c 50 | 20 4e 49 4c 0d 20 20 20 |VSCROLLP| NIL. | |00003400| 20 3a 74 61 62 6c 65 2d | 73 65 71 75 65 6e 63 65 | :table-|sequence| |00003410| 0d 20 20 20 20 27 28 22 | 22 20 22 22 20 22 22 20 |. '("|" "" "" | |00003420| 22 22 20 22 22 20 22 22 | 20 22 22 20 22 22 20 22 |"" "" ""| "" "" "| |00003430| 22 20 22 22 20 22 22 20 | 22 22 20 22 22 20 22 22 |" "" "" |"" "" ""| |00003440| 20 22 22 20 22 22 20 22 | 22 20 22 22 20 22 22 20 | "" "" "|" "" "" | |00003450| 22 22 20 22 22 0d 20 20 | 20 20 20 20 22 22 20 22 |"" "". | "" "| |00003460| 22 20 22 22 20 22 22 20 | 22 22 20 22 22 20 22 22 |" "" "" |"" "" ""| |00003470| 20 22 22 20 22 22 20 22 | 22 20 22 22 20 22 22 20 | "" "" "|" "" "" | |00003480| 22 22 20 22 22 20 22 22 | 20 22 22 20 22 22 20 22 |"" "" ""| "" "" "| |00003490| 22 0d 20 20 20 20 20 20 | 22 22 20 22 22 20 22 22 |". |"" "" ""| |000034a0| 29 0d 20 20 20 20 29 0d | 20 20 29 20 20 20 20 20 |). ).| ) | |000034b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000034c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000034d0| 3b 20 43 4c 41 53 53 20 | 4d 4f 4e 54 48 2d 43 41 |; CLASS |MONTH-CA| |000034e0| 4c 45 4e 44 41 52 0d 0d | 28 44 45 46 4d 45 54 48 |LENDAR..|(DEFMETH| |000034f0| 4f 44 20 49 4e 49 54 49 | 41 4c 49 5a 45 2d 49 4e |OD INITI|ALIZE-IN| |00003500| 53 54 41 4e 43 45 20 3a | 41 46 54 45 52 20 28 28 |STANCE :|AFTER ((| |00003510| 73 65 6c 66 20 4d 4f 4e | 54 48 2d 43 41 4c 45 4e |self MON|TH-CALEN| |00003520| 44 41 52 29 20 26 72 65 | 73 74 20 69 6e 69 74 66 |DAR) &re|st initf| |00003530| 6f 72 6d 73 29 0d 20 20 | 28 64 65 63 6c 61 72 65 |orms). |(declare| |00003540| 20 28 69 67 6e 6f 72 65 | 20 69 6e 69 74 66 6f 72 | (ignore| initfor| |00003550| 6d 73 29 29 0d 20 20 3b | 3b 20 20 61 66 74 65 72 |ms)). ;|; after| |00003560| 20 74 68 65 20 63 61 6c | 65 6e 64 61 72 20 69 73 | the cal|endar is| |00003570| 20 69 6e 69 74 69 61 6c | 69 7a 65 64 20 72 65 73 | initial|ized res| |00003580| 65 74 20 74 68 65 20 63 | 65 6c 6c 20 73 69 7a 65 |et the c|ell size| |00003590| 0d 20 20 28 73 65 74 2d | 63 65 6c 6c 2d 73 69 7a |. (set-|cell-siz| |000035a0| 65 20 73 65 6c 66 20 28 | 66 6c 6f 6f 72 20 28 2f |e self (|floor (/| |000035b0| 20 28 70 6f 69 6e 74 2d | 68 20 28 76 69 65 77 2d | (point-|h (view-| |000035c0| 73 69 7a 65 0d 20 20 20 | 20 20 20 20 20 20 20 20 |size. | | |000035d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000035e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000035f0| 20 20 20 73 65 6c 66 29 | 29 20 37 29 29 0d 20 20 | self)|) 7)). | |00003600| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 28 | | (| |00003610| 66 6c 6f 6f 72 20 28 2f | 20 28 70 6f 69 6e 74 2d |floor (/| (point-| |00003620| 76 20 28 76 69 65 77 2d | 73 69 7a 65 20 73 65 6c |v (view-|size sel| |00003630| 66 29 29 20 36 29 29 29 | 0d 20 20 3b 3b 20 20 66 |f)) 6)))|. ;; f| |00003640| 6f 72 20 65 61 63 68 20 | 6f 66 20 74 68 65 20 63 |or each |of the c| |00003650| 65 6c 6c 73 20 69 6e 20 | 74 68 65 20 63 61 6c 65 |ells in |the cale| |00003660| 6e 64 61 72 2c 20 63 72 | 65 61 74 65 20 61 0d 20 |ndar, cr|eate a. | |00003670| 20 3b 3b 20 20 69 6e 73 | 74 61 6e 63 65 20 6f 66 | ;; ins|tance of| |00003680| 20 44 41 59 20 61 6e 64 | 20 66 69 6c 6c 20 69 6e | DAY and| fill in| |00003690| 20 69 74 73 20 63 6f 6e | 74 65 6e 74 73 20 77 69 | its con|tents wi| |000036a0| 74 68 20 74 68 65 20 6e | 61 6d 65 0d 20 20 3b 3b |th the n|ame. ;;| |000036b0| 20 20 6f 66 20 74 68 65 | 20 64 61 79 20 28 65 2e | of the| day (e.| |000036c0| 67 2e 20 22 53 75 6e 64 | 61 79 22 29 2c 20 74 68 |g. "Sund|ay"), th| |000036d0| 65 20 64 61 79 20 6e 75 | 6d 62 65 72 20 72 65 6c |e day nu|mber rel| |000036e0| 61 74 69 76 65 20 74 6f | 0d 20 20 3b 3b 20 20 74 |ative to|. ;; t| |000036f0| 68 65 20 64 61 79 73 20 | 69 6e 20 74 68 65 20 79 |he days |in the y| |00003700| 65 61 72 20 28 65 2e 67 | 2e 20 32 36 36 29 20 61 |ear (e.g|. 266) a| |00003710| 6e 64 20 74 68 65 20 64 | 61 74 65 0d 20 20 28 43 |nd the d|ate. (C| |00003720| 52 45 41 54 45 2d 44 41 | 59 53 20 73 65 6c 66 29 |REATE-DA|YS self)| |00003730| 0d 20 20 28 46 49 4c 4c | 2d 43 41 4c 45 4e 44 41 |. (FILL|-CALENDA| |00003740| 52 2d 43 45 4c 4c 53 20 | 73 65 6c 66 29 0d 20 20 |R-CELLS |self). | |00003750| 29 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |) | | |00003760| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00003770| 20 20 20 20 20 20 3b 20 | 49 4e 49 54 49 41 4c 49 | ; |INITIALI| |00003780| 5a 45 2d 49 4e 53 54 41 | 4e 43 45 20 3a 41 46 54 |ZE-INSTA|NCE :AFT| |00003790| 45 52 0d 0d 0d 28 44 45 | 46 4d 45 54 48 4f 44 20 |ER...(DE|FMETHOD | |000037a0| 56 49 45 57 2d 44 52 41 | 57 2d 43 4f 4e 54 45 4e |VIEW-DRA|W-CONTEN| |000037b0| 54 53 20 28 28 63 61 6c | 65 6e 64 61 72 20 4d 4f |TS ((cal|endar MO| |000037c0| 4e 54 48 2d 43 41 4c 45 | 4e 44 41 52 29 29 0d 20 |NTH-CALE|NDAR)). | |000037d0| 20 28 43 41 4c 4c 2d 4e | 45 58 54 2d 4d 45 54 48 | (CALL-N|EXT-METH| |000037e0| 4f 44 29 0d 20 20 28 56 | 49 45 57 2d 44 52 41 57 |OD). (V|IEW-DRAW| |000037f0| 2d 43 41 4c 45 4e 44 41 | 52 2d 47 52 49 44 20 63 |-CALENDA|R-GRID c| |00003800| 61 6c 65 6e 64 61 72 29 | 0d 20 20 28 4c 41 59 4f |alendar)|. (LAYO| |00003810| 55 54 2d 44 41 59 2d 4c | 41 42 45 4c 53 20 63 61 |UT-DAY-L|ABELS ca| |00003820| 6c 65 6e 64 61 72 29 0d | 20 20 28 4c 41 59 4f 55 |lendar).| (LAYOU| |00003830| 54 2d 44 41 59 2d 4e 55 | 4d 42 45 52 53 20 63 61 |T-DAY-NU|MBERS ca| |00003840| 6c 65 6e 64 61 72 20 28 | 6d 6f 6e 74 68 20 63 61 |lendar (|month ca| |00003850| 6c 65 6e 64 61 72 29 20 | 28 79 65 61 72 20 63 61 |lendar) |(year ca| |00003860| 6c 65 6e 64 61 72 29 29 | 0d 20 20 0d 20 20 29 20 |lendar))|. . ) | |00003870| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00003880| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00003890| 20 20 20 20 3b 20 56 49 | 45 57 2d 44 52 41 57 2d | ; VI|EW-DRAW-| |000038a0| 43 4f 4e 54 45 4e 54 53 | 0d 0d 28 44 45 46 4d 45 |CONTENTS|..(DEFME| |000038b0| 54 48 4f 44 20 56 49 45 | 57 2d 43 4c 49 43 4b 2d |THOD VIE|W-CLICK-| |000038c0| 45 56 45 4e 54 2d 48 41 | 4e 44 4c 45 52 20 28 28 |EVENT-HA|NDLER ((| |000038d0| 73 65 6c 66 20 4d 4f 4e | 54 48 2d 43 41 4c 45 4e |self MON|TH-CALEN| |000038e0| 44 41 52 29 20 77 68 65 | 72 65 29 0d 20 20 3b 3b |DAR) whe|re). ;;| |000038f0| 20 20 54 68 65 20 64 65 | 66 61 75 6c 74 20 77 69 | The de|fault wi| |00003900| 6c 6c 20 70 72 69 6e 74 | 20 6f 75 74 20 73 6f 6d |ll print| out som| |00003910| 65 74 68 69 6e 67 20 6c | 69 6b 65 20 22 73 75 6e |ething l|ike "sun| |00003920| 64 61 79 2c 20 31 2f 31 | 2f 39 32 22 20 6f 72 20 |day, 1/1|/92" or | |00003930| 4e 49 4c 0d 20 20 28 66 | 75 6e 63 61 6c 6c 20 23 |NIL. (f|uncall #| |00003940| 27 63 61 6c 6c 2d 6e 65 | 78 74 2d 6d 65 74 68 6f |'call-ne|xt-metho| |00003950| 64 20 73 65 6c 66 20 77 | 68 65 72 65 29 0d 20 20 |d self w|here). | |00003960| 28 6c 65 74 2a 20 28 28 | 63 65 6c 6c 20 28 63 61 |(let* ((|cell (ca| |00003970| 72 20 28 73 65 6c 65 63 | 74 65 64 2d 63 65 6c 6c |r (selec|ted-cell| |00003980| 73 20 73 65 6c 66 29 29 | 29 0d 20 20 20 20 20 20 |s self))|). | |00003990| 20 20 20 20 20 20 28 64 | 61 79 20 28 63 64 72 20 | (d|ay (cdr | |000039a0| 28 61 73 73 6f 63 20 63 | 65 6c 6c 20 28 6d 6f 6e |(assoc c|ell (mon| |000039b0| 74 68 2d 64 61 79 73 20 | 73 65 6c 66 29 29 29 29 |th-days |self))))| |000039c0| 29 0d 20 20 20 3b 3b 20 | 28 69 6e 73 70 65 63 74 |). ;; |(inspect| |000039d0| 20 64 61 79 29 0d 20 20 | 20 20 28 66 6f 72 6d 61 | day). | (forma| |000039e0| 74 20 74 20 22 7e 25 54 | 68 65 20 64 61 79 20 63 |t t "~%T|he day c| |000039f0| 6c 69 63 6b 65 64 20 6f | 6e 20 69 73 20 7e 61 2c |licked o|n is ~a,| |00003a00| 20 20 7e 61 2f 7e 61 2f | 7e 61 22 20 28 64 61 79 | ~a/~a/|~a" (day| |00003a10| 2d 6e 61 6d 65 20 64 61 | 79 29 20 28 6d 6f 6e 74 |-name da|y) (mont| |00003a20| 68 20 64 61 79 29 0d 20 | 20 20 20 20 20 20 20 20 |h day). | | |00003a30| 20 20 20 20 20 20 20 20 | 28 64 61 74 65 20 64 61 | |(date da| |00003a40| 79 29 20 28 79 65 61 72 | 20 64 61 79 29 29 0d 20 |y) (year| day)). | |00003a50| 20 20 20 29 0d 20 20 29 | 20 20 20 20 20 20 20 20 | ). )| | |00003a60| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00003a70| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 56 | | ; V| |00003a80| 49 45 57 2d 43 4c 49 43 | 4b 2d 45 56 45 4e 54 2d |IEW-CLIC|K-EVENT-| |00003a90| 48 41 4e 44 4c 45 52 0d | 0d 28 44 45 46 4d 45 54 |HANDLER.|.(DEFMET| |00003aa0| 48 4f 44 20 43 52 45 41 | 54 45 2d 44 41 59 53 20 |HOD CREA|TE-DAYS | |00003ab0| 28 28 73 65 6c 66 20 4d | 4f 4e 54 48 2d 43 41 4c |((self M|ONTH-CAL| |00003ac0| 45 4e 44 41 52 29 29 0d | 20 20 20 20 22 43 72 65 |ENDAR)).| "Cre| |00003ad0| 61 74 65 73 20 74 68 65 | 20 64 61 79 73 20 77 68 |ates the| days wh| |00003ae0| 69 63 68 20 61 72 65 20 | 61 73 73 6f 63 69 61 74 |ich are |associat| |00003af0| 65 64 20 77 69 74 68 20 | 74 68 65 20 63 65 6c 6c |ed with |the cell| |00003b00| 73 0d 20 20 20 20 20 20 | 69 6e 20 74 68 65 20 76 |s. |in the v| |00003b10| 69 65 77 22 0d 20 20 20 | 20 28 6c 6f 6f 70 20 66 |iew". | (loop f| |00003b20| 6f 72 20 63 6f 75 6e 74 | 20 66 72 6f 6d 20 30 20 |or count| from 0 | |00003b30| 74 6f 20 34 31 0d 20 20 | 20 20 20 20 20 20 20 20 |to 41. | | |00003b40| 20 20 20 64 6f 0d 20 20 | 20 20 20 20 20 20 20 20 | do. | | |00003b50| 20 20 20 28 6c 65 74 2a | 20 28 28 63 65 6c 6c 20 | (let*| ((cell | |00003b60| 28 69 6e 64 65 78 2d 74 | 6f 2d 63 65 6c 6c 20 73 |(index-t|o-cell s| |00003b70| 65 6c 66 20 63 6f 75 6e | 74 29 29 0d 20 20 20 20 |elf coun|t)). | |00003b80| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00003b90| 20 20 20 28 64 61 79 2e | 6e 75 6d 62 65 72 20 28 | (day.|number (| |00003ba0| 70 6f 69 6e 74 2d 68 20 | 63 65 6c 6c 29 29 0d 20 |point-h |cell)). | |00003bb0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00003bc0| 20 20 20 20 20 20 28 64 | 61 79 20 28 6d 61 6b 65 | (d|ay (make| |00003bd0| 2d 69 6e 73 74 61 6e 63 | 65 20 27 64 61 79 29 29 |-instanc|e 'day))| |00003be0| 29 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |). | | |00003bf0| 20 20 28 73 65 74 66 20 | 28 64 61 79 2d 6e 61 6d | (setf |(day-nam| |00003c00| 65 20 64 61 79 29 20 28 | 67 65 74 2d 64 61 79 2d |e day) (|get-day-| |00003c10| 6e 61 6d 65 20 64 61 79 | 2e 6e 75 6d 62 65 72 29 |name day|.number)| |00003c20| 29 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |). | | |00003c30| 20 20 28 73 65 74 66 20 | 28 6d 6f 6e 74 68 2d 64 | (setf |(month-d| |00003c40| 61 79 73 20 73 65 6c 66 | 29 20 28 63 6f 6e 73 20 |ays self|) (cons | |00003c50| 28 63 6f 6e 73 20 63 65 | 6c 6c 20 64 61 79 29 20 |(cons ce|ll day) | |00003c60| 28 6d 6f 6e 74 68 2d 64 | 61 79 73 20 73 65 6c 66 |(month-d|ays self| |00003c70| 29 29 29 29 0d 20 20 20 | 20 20 20 20 20 20 20 20 |)))). | | |00003c80| 20 20 29 0d 20 20 20 20 | 29 20 20 20 20 20 20 20 | ). |) | |00003c90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00003ca0| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 43 52 | | ; CR| |00003cb0| 45 41 54 45 2d 44 41 59 | 53 0d 0d 28 44 45 46 4d |EATE-DAY|S..(DEFM| |00003cc0| 45 54 48 4f 44 20 46 49 | 4c 4c 2d 57 49 54 48 2d |ETHOD FI|LL-WITH-| |00003cd0| 4c 41 53 54 2d 4d 4f 4e | 54 48 20 28 28 73 65 6c |LAST-MON|TH ((sel| |00003ce0| 66 20 4d 4f 4e 54 48 2d | 43 41 4c 45 4e 44 41 52 |f MONTH-|CALENDAR| |00003cf0| 29 20 64 61 79 73 20 6d | 6f 6e 74 68 20 79 65 61 |) days m|onth yea| |00003d00| 72 29 0d 20 20 22 46 69 | 6c 6c 20 69 6e 20 74 68 |r). "Fi|ll in th| |00003d10| 65 20 64 61 79 73 20 66 | 6f 72 20 74 68 65 20 70 |e days f|or the p| |00003d20| 72 65 76 69 6f 75 73 20 | 6d 6f 6e 74 68 20 69 66 |revious |month if| |00003d30| 20 74 68 65 20 66 69 6c | 6c 2e 61 6c 6c 0d 73 6c | the fil|l.all.sl| |00003d40| 6f 74 20 69 73 20 54 22 | 0d 20 20 28 6c 6f 6f 70 |ot is T"|. (loop| |00003d50| 20 66 6f 72 20 70 70 65 | 6e 64 2e 64 61 79 20 69 | for ppe|nd.day i| |00003d60| 6e 20 28 64 61 79 73 2d | 74 6f 2d 70 72 65 70 65 |n (days-|to-prepe| |00003d70| 6e 64 20 6d 6f 6e 74 68 | 20 79 65 61 72 29 0d 20 |nd month| year). | |00003d80| 20 20 20 20 20 20 20 61 | 73 20 64 61 79 20 69 6e | a|s day in| |00003d90| 20 64 61 79 73 0d 20 20 | 20 20 20 20 20 20 77 69 | days. | wi| |00003da0| 74 68 20 6c 61 73 74 2e | 6d 6f 6e 74 68 20 3d 20 |th last.|month = | |00003db0| 28 70 72 65 76 69 6f 75 | 73 2d 6d 6f 6e 74 68 20 |(previou|s-month | |00003dc0| 6d 6f 6e 74 68 29 0d 20 | 20 20 20 20 20 20 20 3b |month). | ;| |00003dd0| 3b 20 66 6f 72 20 74 68 | 65 20 79 65 61 72 20 62 |; for th|e year b| |00003de0| 6f 75 6e 64 61 72 79 0d | 20 20 20 20 20 20 20 20 |oundary.| | |00003df0| 77 69 74 68 20 79 65 61 | 72 20 3d 20 28 69 66 20 |with yea|r = (if | |00003e00| 20 28 3d 20 6c 61 73 74 | 2e 6d 6f 6e 74 68 20 31 | (= last|.month 1| |00003e10| 32 29 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |2). | | |00003e20| 20 20 20 20 20 20 20 20 | 20 28 31 2d 20 79 65 61 | | (1- yea| |00003e30| 72 29 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |r). | | |00003e40| 20 20 20 20 20 20 20 20 | 20 79 65 61 72 29 0d 20 | | year). | |00003e50| 20 20 20 20 20 20 20 64 | 6f 0d 20 20 20 20 20 20 | d|o. | |00003e60| 20 20 28 6c 65 74 20 28 | 28 64 61 79 20 28 63 64 | (let (|(day (cd| |00003e70| 72 20 64 61 79 29 29 29 | 0d 20 20 20 20 20 20 20 |r day)))|. | |00003e80| 20 20 20 28 73 65 74 66 | 20 28 64 61 74 65 20 64 | (setf| (date d| |00003e90| 61 79 29 20 70 70 65 6e | 64 2e 64 61 79 29 0d 20 |ay) ppen|d.day). | |00003ea0| 20 20 20 20 20 20 20 20 | 20 28 73 65 74 66 20 28 | | (setf (| |00003eb0| 6d 6f 6e 74 68 20 64 61 | 79 29 20 6c 61 73 74 2e |month da|y) last.| |00003ec0| 6d 6f 6e 74 68 29 0d 20 | 20 20 20 20 20 20 20 20 |month). | | |00003ed0| 20 28 73 65 74 66 20 28 | 64 61 79 2d 6e 75 6d 62 | (setf (|day-numb| |00003ee0| 65 72 20 64 61 79 29 20 | 28 64 61 79 2d 6f 66 2d |er day) |(day-of-| |00003ef0| 79 65 61 72 20 70 70 65 | 6e 64 2e 64 61 79 20 6d |year ppe|nd.day m| |00003f00| 6f 6e 74 68 20 79 65 61 | 72 29 29 0d 20 20 20 20 |onth yea|r)). | |00003f10| 20 20 20 20 20 20 28 73 | 65 74 66 20 28 79 65 61 | (s|etf (yea| |00003f20| 72 20 64 61 79 29 20 79 | 65 61 72 29 0d 20 20 20 |r day) y|ear). | |00003f30| 20 20 20 20 20 20 20 29 | 0d 20 20 20 20 20 20 20 | )|. | |00003f40| 20 29 0d 20 20 29 20 20 | 20 20 20 20 20 20 20 20 | ). ) | | |00003f50| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00003f60| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 46 49 4c | | ; FIL| |00003f70| 4c 2d 57 49 54 48 2d 4c | 41 53 54 2d 4d 4f 4e 54 |L-WITH-L|AST-MONT| |00003f80| 48 0d 0d 28 44 45 46 4d | 45 54 48 4f 44 20 46 49 |H..(DEFM|ETHOD FI| |00003f90| 4c 4c 2d 57 49 54 48 2d | 4e 45 58 54 2d 4d 4f 4e |LL-WITH-|NEXT-MON| |00003fa0| 54 48 20 28 28 73 65 6c | 66 20 4d 4f 4e 54 48 2d |TH ((sel|f MONTH-| |00003fb0| 43 41 4c 45 4e 44 41 52 | 29 20 64 61 79 73 20 6d |CALENDAR|) days m| |00003fc0| 6f 6e 74 68 0d 20 20 20 | 20 20 20 20 20 20 20 20 |onth. | | |00003fd0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00003fe0| 20 20 20 20 20 20 79 65 | 61 72 29 0d 20 20 22 46 | ye|ar). "F| |00003ff0| 69 6c 6c 20 69 6e 20 74 | 68 65 20 65 6e 64 20 6f |ill in t|he end o| |00004000| 66 20 74 68 65 20 63 61 | 6c 65 6e 64 61 72 20 77 |f the ca|lendar w| |00004010| 69 74 68 20 74 68 65 20 | 66 69 72 73 74 20 64 61 |ith the |first da| |00004020| 79 73 20 66 72 6f 6d 0d | 74 68 65 20 6e 65 78 74 |ys from.|the next| |00004030| 20 6d 6f 6e 74 68 20 69 | 66 20 74 68 65 20 66 69 | month i|f the fi| |00004040| 6c 6c 2e 61 6c 6c 20 73 | 6c 6f 74 20 69 73 20 54 |ll.all s|lot is T| |00004050| 22 0d 20 20 28 6c 6f 6f | 70 20 66 6f 72 20 61 70 |". (loo|p for ap| |00004060| 65 6e 64 2e 64 61 79 20 | 69 6e 20 28 64 61 79 73 |end.day |in (days| |00004070| 2d 74 6f 2d 61 70 70 65 | 6e 64 20 6d 6f 6e 74 68 |-to-appe|nd month| |00004080| 20 79 65 61 72 29 0d 20 | 20 20 20 20 20 20 20 61 | year). | a| |00004090| 73 20 64 61 79 20 69 6e | 20 28 6d 65 6d 62 65 72 |s day in| (member| |000040a0| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | | |000040b0| 20 20 20 20 28 6e 74 68 | 20 28 2b 20 28 64 61 79 | (nth| (+ (day| |000040c0| 73 2d 69 6e 2d 6d 6f 6e | 74 68 20 6d 6f 6e 74 68 |s-in-mon|th month| |000040d0| 20 79 65 61 72 29 0d 20 | 20 20 20 20 20 20 20 20 | year). | | |000040e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000040f0| 20 20 28 6c 65 6e 67 74 | 68 20 28 64 61 79 73 2d | (lengt|h (days-| |00004100| 74 6f 2d 70 72 65 70 65 | 6e 64 20 6d 6f 6e 74 68 |to-prepe|nd month| |00004110| 20 79 65 61 72 29 29 29 | 0d 20 20 20 20 20 20 20 | year)))|. | |00004120| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00004130| 20 64 61 79 73 29 0d 20 | 20 20 20 20 20 20 20 20 | days). | | |00004140| 20 20 20 20 20 20 20 20 | 20 20 64 61 79 73 29 0d | | days).| |00004150| 20 20 20 20 20 20 20 20 | 77 69 74 68 20 6e 65 78 | |with nex| |00004160| 74 2e 6d 6f 6e 74 68 20 | 3d 20 28 6e 65 78 74 2d |t.month |= (next-| |00004170| 6d 6f 6e 74 68 20 6d 6f | 6e 74 68 29 0d 20 20 20 |month mo|nth). | |00004180| 20 20 20 20 20 77 69 74 | 68 20 79 65 61 72 20 3d | wit|h year =| |00004190| 20 28 69 66 20 20 28 3d | 20 6d 6f 6e 74 68 20 31 | (if (=| month 1| |000041a0| 32 29 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |2). | | |000041b0| 20 20 20 20 20 20 20 20 | 20 28 31 2b 20 79 65 61 | | (1+ yea| |000041c0| 72 29 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |r). | | |000041d0| 20 20 20 20 20 20 20 20 | 20 79 65 61 72 29 0d 20 | | year). | |000041e0| 20 20 20 20 20 20 20 64 | 6f 0d 20 20 20 20 20 20 | d|o. | |000041f0| 20 20 28 6c 65 74 20 28 | 28 64 61 79 20 28 63 64 | (let (|(day (cd| |00004200| 72 20 64 61 79 29 29 29 | 0d 20 20 20 20 20 20 20 |r day)))|. | |00004210| 20 20 20 28 73 65 74 66 | 20 28 64 61 74 65 20 64 | (setf| (date d| |00004220| 61 79 29 20 61 70 65 6e | 64 2e 64 61 79 29 0d 20 |ay) apen|d.day). | |00004230| 20 20 20 20 20 20 20 20 | 20 28 73 65 74 66 20 28 | | (setf (| |00004240| 6d 6f 6e 74 68 20 64 61 | 79 29 20 6e 65 78 74 2e |month da|y) next.| |00004250| 6d 6f 6e 74 68 29 0d 20 | 20 20 20 20 20 20 20 20 |month). | | |00004260| 20 28 73 65 74 66 20 28 | 64 61 79 2d 6e 75 6d 62 | (setf (|day-numb| |00004270| 65 72 20 64 61 79 29 20 | 28 64 61 79 2d 6f 66 2d |er day) |(day-of-| |00004280| 79 65 61 72 20 61 70 65 | 6e 64 2e 64 61 79 20 6d |year ape|nd.day m| |00004290| 6f 6e 74 68 20 79 65 61 | 72 29 29 0d 20 20 20 20 |onth yea|r)). | |000042a0| 20 20 20 20 20 20 28 73 | 65 74 66 20 28 79 65 61 | (s|etf (yea| |000042b0| 72 20 64 61 79 29 20 79 | 65 61 72 29 0d 20 20 20 |r day) y|ear). | |000042c0| 20 20 20 20 20 20 20 29 | 0d 20 20 20 20 20 20 20 | )|. | |000042d0| 20 29 0d 20 20 29 20 20 | 20 20 20 20 20 20 20 20 | ). ) | | |000042e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000042f0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 46 49 4c | | ; FIL| |00004300| 4c 2d 57 49 54 48 2d 4e | 45 58 54 2d 4d 4f 4e 54 |L-WITH-N|EXT-MONT| |00004310| 48 0d 0d 28 44 45 46 4d | 45 54 48 4f 44 20 46 49 |H..(DEFM|ETHOD FI| |00004320| 4c 4c 2d 43 55 52 52 45 | 4e 54 2d 4d 4f 4e 54 48 |LL-CURRE|NT-MONTH| |00004330| 20 28 28 73 65 6c 66 20 | 4d 4f 4e 54 48 2d 43 41 | ((self |MONTH-CA| |00004340| 4c 45 4e 44 41 52 29 20 | 64 61 79 73 20 6d 6f 6e |LENDAR) |days mon| |00004350| 74 68 20 79 65 61 72 29 | 0d 20 20 22 46 69 6c 6c |th year)|. "Fill| |00004360| 20 69 6e 20 74 68 65 20 | 64 61 79 73 20 69 74 65 | in the |days ite| |00004370| 6d 73 20 61 73 73 6f 63 | 69 61 74 65 64 20 77 69 |ms assoc|iated wi| |00004380| 74 68 20 74 68 65 20 63 | 75 72 72 65 6e 74 20 6d |th the c|urrent m| |00004390| 6f 6e 74 68 22 0d 20 20 | 28 6c 6f 6f 70 20 66 6f |onth". |(loop fo| |000043a0| 72 20 69 74 65 6d 20 69 | 6e 20 64 61 79 73 20 20 |r item i|n days | |000043b0| 20 20 20 20 20 20 20 20 | 20 3b 20 54 68 65 20 6d | | ; The m| |000043c0| 61 69 6e 20 6d 6f 6e 74 | 68 20 63 61 6c 65 6e 64 |ain mont|h calend| |000043d0| 61 72 0d 20 20 20 20 20 | 20 20 20 66 6f 72 20 63 |ar. | for c| |000043e0| 6f 75 6e 74 20 66 72 6f | 6d 20 30 20 74 6f 20 34 |ount fro|m 0 to 4| |000043f0| 31 0d 20 20 20 20 20 20 | 20 20 77 69 74 68 20 28 |1. | with (| |00004400| 73 74 61 72 74 2e 66 69 | 6c 6c 69 6e 67 3f 20 64 |start.fi|lling? d| |00004410| 61 74 65 29 0d 20 20 20 | 20 20 20 20 20 69 6e 69 |ate). | ini| |00004420| 74 69 61 6c 6c 79 20 28 | 73 65 74 66 20 64 61 74 |tially (|setf dat| |00004430| 65 20 30 29 0d 20 20 20 | 20 20 20 20 20 64 6f 0d |e 0). | do.| |00004440| 20 20 20 20 20 20 20 20 | 28 6c 65 74 20 28 28 64 | |(let ((d| |00004450| 61 79 20 28 63 64 72 20 | 69 74 65 6d 29 29 29 0d |ay (cdr |item))).| |00004460| 20 20 20 20 20 20 20 20 | 20 20 28 75 6e 6c 65 73 | | (unles| |00004470| 73 20 73 74 61 72 74 2e | 66 69 6c 6c 69 6e 67 3f |s start.|filling?| |00004480| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 3b 20 |. | ;; | |00004490| 20 74 65 73 74 20 74 6f | 20 73 65 65 20 69 66 20 | test to| see if | |000044a0| 77 65 20 73 68 6f 75 6c | 64 20 73 74 61 72 74 20 |we shoul|d start | |000044b0| 66 69 6c 6c 69 6e 67 20 | 69 6e 0d 20 20 20 20 20 |filling |in. | |000044c0| 20 20 20 20 20 20 20 3b | 3b 20 20 74 68 65 20 69 | ;|; the i| |000044d0| 6e 73 74 61 6e 63 65 73 | 20 6f 66 20 44 41 59 0d |nstances| of DAY.| |000044e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 28 73 65 74 | | (set| |000044f0| 66 20 73 74 61 72 74 2e | 66 69 6c 6c 69 6e 67 3f |f start.|filling?| |00004500| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | | |00004510| 20 20 20 28 69 66 20 28 | 3d 20 63 6f 75 6e 74 0d | (if (|= count.| |00004520| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00004530| 20 20 20 20 20 20 20 20 | 20 28 66 69 72 73 74 2d | | (first-| |00004540| 64 61 79 2d 6f 66 2d 6d | 6f 6e 74 68 0d 20 20 20 |day-of-m|onth. | |00004550| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00004560| 20 20 20 20 20 20 20 6d | 6f 6e 74 68 20 79 65 61 | m|onth yea| |00004570| 72 29 29 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |r)). | | |00004580| 20 20 20 20 20 20 20 20 | 74 29 29 29 0d 20 20 20 | |t))). | |00004590| 20 20 20 20 20 20 20 3b | 3b 20 20 70 61 73 73 20 | ;|; pass | |000045a0| 6f 76 65 72 20 74 68 69 | 73 20 69 66 20 74 68 65 |over thi|s if the| |000045b0| 20 64 61 79 20 6f 62 6a | 65 63 74 20 69 73 20 69 | day obj|ect is i| |000045c0| 72 72 65 6c 65 76 61 6e | 74 0d 20 20 20 20 20 20 |rrelevan|t. | |000045d0| 20 20 20 20 3b 3b 20 20 | 74 6f 20 74 68 69 73 20 | ;; |to this | |000045e0| 6d 6f 6e 74 68 2d 20 69 | 2e 65 2e 20 65 69 74 68 |month- i|.e. eith| |000045f0| 65 72 20 62 65 66 6f 72 | 65 20 74 68 65 20 73 74 |er befor|e the st| |00004600| 61 72 74 20 6f 66 0d 20 | 20 20 20 20 20 20 20 20 |art of. | | |00004610| 20 3b 3b 20 20 74 68 65 | 20 6d 6f 6e 74 68 20 6f | ;; the| month o| |00004620| 72 20 61 66 74 65 72 20 | 74 68 65 20 65 6e 64 2d |r after |the end-| |00004630| 20 74 68 65 0d 20 20 20 | 20 20 20 20 20 20 20 3b | the. | ;| |00004640| 3b 20 20 66 69 6c 6c 2e | 61 6c 6c 20 63 6f 6e 64 |; fill.|all cond| |00004650| 69 74 69 6f 6e 20 74 61 | 6b 65 73 20 63 61 72 65 |ition ta|kes care| |00004660| 20 6f 66 20 74 68 69 73 | 0d 20 20 20 20 20 20 20 | of this|. | |00004670| 20 20 20 28 63 6f 6e 64 | 20 28 73 74 61 72 74 2e | (cond| (start.| |00004680| 66 69 6c 6c 69 6e 67 3f | 0d 20 20 20 20 20 20 20 |filling?|. | |00004690| 20 20 20 20 20 20 20 20 | 20 20 28 73 65 74 66 20 | | (setf | |000046a0| 64 61 74 65 20 28 2b 20 | 31 20 64 61 74 65 29 29 |date (+ |1 date))| |000046b0| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | | |000046c0| 20 20 28 73 65 74 66 20 | 28 64 61 74 65 20 64 61 | (setf |(date da| |000046d0| 79 29 20 20 20 64 61 74 | 65 29 0d 20 20 20 20 20 |y) dat|e). | |000046e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 28 73 65 74 | | (set| |000046f0| 66 20 28 64 61 79 2d 6e | 75 6d 62 65 72 20 64 61 |f (day-n|umber da| |00004700| 79 29 20 28 64 61 79 2d | 6f 66 2d 79 65 61 72 20 |y) (day-|of-year | |00004710| 64 61 74 65 20 6d 6f 6e | 74 68 20 79 65 61 72 29 |date mon|th year)| |00004720| 29 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |). | | |00004730| 20 20 20 28 73 65 74 66 | 20 28 6d 6f 6e 74 68 20 | (setf| (month | |00004740| 64 61 79 29 20 6d 6f 6e | 74 68 29 0d 20 20 20 20 |day) mon|th). | |00004750| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 28 73 65 | | (se| |00004760| 74 66 20 28 79 65 61 72 | 20 64 61 79 29 20 79 65 |tf (year| day) ye| |00004770| 61 72 29 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |ar). | | |00004780| 20 20 20 20 20 3b 3b 20 | 20 49 66 20 77 65 20 61 | ;; | If we a| |00004790| 72 65 20 61 74 20 74 68 | 65 20 65 6e 64 20 6f 66 |re at th|e end of| |000047a0| 20 74 68 65 20 6d 6f 6e | 74 68 20 73 74 6f 70 20 | the mon|th stop | |000047b0| 66 69 6c 6c 69 6e 67 0d | 20 20 20 20 20 20 20 20 |filling.| | |000047c0| 20 20 20 20 20 20 20 20 | 20 28 69 66 20 28 3d 20 | | (if (= | |000047d0| 64 61 74 65 20 28 64 61 | 79 73 2d 69 6e 2d 6d 6f |date (da|ys-in-mo| |000047e0| 6e 74 68 20 6d 6f 6e 74 | 68 20 79 65 61 72 29 29 |nth mont|h year))| |000047f0| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | | |00004800| 20 20 20 20 28 73 65 74 | 66 20 73 74 61 72 74 2e | (set|f start.| |00004810| 66 69 6c 6c 69 6e 67 3f | 20 6e 69 6c 29 29 29 0d |filling?| nil))).| |00004820| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00004830| 29 0d 20 20 20 20 20 20 | 20 20 20 20 29 0d 20 20 |). | ). | |00004840| 20 20 20 20 20 20 29 0d | 20 20 29 20 20 20 20 20 | ).| ) | |00004850| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00004860| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00004870| 3b 20 46 49 4c 4c 2d 43 | 55 52 52 45 4e 54 2d 4d |; FILL-C|URRENT-M| |00004880| 4f 4e 54 48 0d 0d 28 44 | 45 46 4d 45 54 48 4f 44 |ONTH..(D|EFMETHOD| |00004890| 20 46 49 4c 4c 2d 43 41 | 4c 45 4e 44 41 52 2d 43 | FILL-CA|LENDAR-C| |000048a0| 45 4c 4c 53 20 28 28 73 | 65 6c 66 20 4d 4f 4e 54 |ELLS ((s|elf MONT| |000048b0| 48 2d 43 41 4c 45 4e 44 | 41 52 29 29 0d 20 20 22 |H-CALEND|AR)). "| |000048c0| 46 6f 72 20 65 61 63 68 | 20 6f 66 20 74 68 65 20 |For each| of the | |000048d0| 64 61 79 20 69 74 65 6d | 73 20 61 73 73 6f 63 69 |day item|s associ| |000048e0| 61 74 65 64 20 77 69 74 | 68 20 74 68 65 20 63 61 |ated wit|h the ca| |000048f0| 6c 65 6e 64 61 72 0d 20 | 20 20 20 76 69 65 77 20 |lendar. | view | |00004900| 66 69 6c 6c 20 69 6e 20 | 74 68 65 20 61 70 70 72 |fill in |the appr| |00004910| 6f 70 72 69 61 74 65 20 | 73 6c 6f 74 73 22 0d 20 |opriate |slots". | |00004920| 20 28 6c 65 74 20 28 28 | 6d 6f 6e 74 68 20 28 6d | (let ((|month (m| |00004930| 6f 6e 74 68 20 73 65 6c | 66 29 29 0d 20 20 20 20 |onth sel|f)). | |00004940| 20 20 20 20 28 79 65 61 | 72 20 28 79 65 61 72 20 | (yea|r (year | |00004950| 73 65 6c 66 29 29 0d 20 | 20 20 20 20 20 20 20 28 |self)). | (| |00004960| 66 69 6c 6c 2e 61 6c 6c | 3f 20 28 66 69 6c 6c 2e |fill.all|? (fill.| |00004970| 61 6c 6c 20 73 65 6c 66 | 29 29 0d 20 20 20 20 20 |all self|)). | |00004980| 20 20 20 28 64 61 79 73 | 20 28 72 65 76 65 72 73 | (days| (revers| |00004990| 65 20 28 6d 6f 6e 74 68 | 2d 64 61 79 73 20 73 65 |e (month|-days se| |000049a0| 6c 66 29 29 29 29 0d 20 | 20 20 20 28 63 6f 6e 64 |lf)))). | (cond| |000049b0| 20 28 66 69 6c 6c 2e 61 | 6c 6c 3f 0d 20 20 20 20 | (fill.a|ll?. | |000049c0| 20 20 20 20 20 20 20 28 | 46 49 4c 4c 2d 57 49 54 | (|FILL-WIT| |000049d0| 48 2d 4c 41 53 54 2d 4d | 4f 4e 54 48 20 73 65 6c |H-LAST-M|ONTH sel| |000049e0| 66 20 64 61 79 73 20 6d | 6f 6e 74 68 20 79 65 61 |f days m|onth yea| |000049f0| 72 29 0d 20 20 20 20 20 | 20 20 20 20 20 20 28 46 |r). | (F| |00004a00| 49 4c 4c 2d 43 55 52 52 | 45 4e 54 2d 4d 4f 4e 54 |ILL-CURR|ENT-MONT| |00004a10| 48 20 73 65 6c 66 20 64 | 61 79 73 20 6d 6f 6e 74 |H self d|ays mont| |00004a20| 68 20 79 65 61 72 29 0d | 20 20 20 20 20 20 20 20 |h year).| | |00004a30| 20 20 20 28 46 49 4c 4c | 2d 57 49 54 48 2d 4e 45 | (FILL|-WITH-NE| |00004a40| 58 54 2d 4d 4f 4e 54 48 | 20 73 65 6c 66 20 64 61 |XT-MONTH| self da| |00004a50| 79 73 20 6d 6f 6e 74 68 | 20 79 65 61 72 29 29 0d |ys month| year)).| |00004a60| 20 20 20 20 20 20 20 20 | 20 20 28 74 0d 20 20 20 | | (t. | |00004a70| 20 20 20 20 20 20 20 20 | 3b 3b 20 20 46 69 72 73 | |;; Firs| |00004a80| 74 20 6e 75 6c 6c 20 6f | 75 74 20 74 68 65 20 64 |t null o|ut the d| |00004a90| 61 79 73 20 77 68 69 63 | 68 20 6d 61 79 20 68 61 |ays whic|h may ha| |00004aa0| 76 65 20 62 65 65 6e 0d | 20 20 20 20 20 20 20 20 |ve been.| | |00004ab0| 20 20 20 3b 3b 20 20 70 | 72 65 76 69 6f 75 73 6c | ;; p|reviousl| |00004ac0| 79 20 75 73 65 64 2e 0d | 20 20 20 20 20 20 20 20 |y used..| | |00004ad0| 20 20 20 28 52 45 53 45 | 54 2d 44 41 59 53 20 73 | (RESE|T-DAYS s| |00004ae0| 65 6c 66 20 64 61 79 73 | 29 0d 20 20 20 20 20 20 |elf days|). | |00004af0| 20 20 20 20 20 28 46 49 | 4c 4c 2d 43 55 52 52 45 | (FI|LL-CURRE| |00004b00| 4e 54 2d 4d 4f 4e 54 48 | 20 73 65 6c 66 20 64 61 |NT-MONTH| self da| |00004b10| 79 73 20 6d 6f 6e 74 68 | 20 79 65 61 72 29 29 29 |ys month| year)))| |00004b20| 0d 20 20 20 20 29 0d 20 | 20 29 20 20 20 20 20 20 |. ). | ) | |00004b30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00004b40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;| |00004b50| 20 46 49 4c 4c 2d 43 41 | 4c 45 4e 44 41 52 2d 43 | FILL-CA|LENDAR-C| |00004b60| 45 4c 4c 53 0d 0d 28 44 | 45 46 4d 45 54 48 4f 44 |ELLS..(D|EFMETHOD| |00004b70| 20 52 45 53 45 54 2d 44 | 41 59 53 20 28 28 73 65 | RESET-D|AYS ((se| |00004b80| 6c 66 20 4d 4f 4e 54 48 | 2d 43 41 4c 45 4e 44 41 |lf MONTH|-CALENDA| |00004b90| 52 29 20 64 61 79 73 29 | 0d 20 20 22 46 6f 72 20 |R) days)|. "For | |00004ba0| 65 61 63 68 20 6f 66 20 | 74 68 65 20 64 61 79 73 |each of |the days| |00004bb0| 20 72 65 73 65 74 20 74 | 68 65 20 72 65 6c 65 76 | reset t|he relev| |00004bc0| 61 6e 74 20 73 6c 6f 74 | 73 22 0d 20 20 3b 3b 20 |ant slot|s". ;; | |00004bd0| 20 61 63 74 75 61 6c 6c | 79 20 77 61 6e 74 20 74 | actuall|y want t| |00004be0| 6f 20 62 65 20 73 6d 61 | 72 74 65 72 20 74 68 61 |o be sma|rter tha| |00004bf0| 6e 20 74 68 69 73 20 2d | 20 6a 75 73 74 20 72 65 |n this -| just re| |00004c00| 73 65 74 20 74 68 65 0d | 20 20 3b 3b 20 20 73 6c |set the.| ;; sl| |00004c10| 6f 74 73 20 66 6f 72 20 | 74 68 65 20 64 61 79 73 |ots for |the days| |00004c20| 20 74 68 61 74 20 77 6f | 75 6c 64 20 68 61 76 65 | that wo|uld have| |00004c30| 20 62 65 65 6e 20 70 72 | 65 70 65 6e 64 65 64 20 | been pr|epended | |00004c40| 61 6e 64 0d 20 20 3b 3b | 20 20 61 70 70 65 6e 64 |and. ;;| append| |00004c50| 65 64 20 74 6f 20 72 61 | 74 68 65 72 20 74 68 61 |ed to ra|ther tha| |00004c60| 6e 20 74 68 65 20 77 68 | 6f 6c 65 20 62 75 6e 63 |n the wh|ole bunc| |00004c70| 68 20 73 69 6e 63 65 20 | 74 68 65 20 63 75 72 72 |h since |the curr| |00004c80| 65 6e 74 0d 20 20 3b 3b | 20 20 6d 6f 6e 74 68 27 |ent. ;;| month'| |00004c90| 73 20 64 61 79 73 20 61 | 72 65 20 72 65 73 65 74 |s days a|re reset| |00004ca0| 20 61 6e 79 77 61 79 2e | 0d 20 20 28 64 6f 6c 69 | anyway.|. (doli| |00004cb0| 73 74 20 28 64 61 79 20 | 64 61 79 73 29 0d 20 20 |st (day |days). | |00004cc0| 20 20 28 72 65 73 65 74 | 20 28 63 64 72 20 64 61 | (reset| (cdr da| |00004cd0| 79 29 29 29 0d 20 20 29 | 20 20 20 20 20 20 20 20 |y))). )| | |00004ce0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00004cf0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 52 | | ; R| |00004d00| 45 53 45 54 2d 44 41 59 | 53 0d 0d 28 44 45 46 4d |ESET-DAY|S..(DEFM| |00004d10| 45 54 48 4f 44 20 53 48 | 4f 57 2d 4e 45 58 54 20 |ETHOD SH|OW-NEXT | |00004d20| 28 28 63 61 6c 65 6e 64 | 61 72 20 4d 4f 4e 54 48 |((calend|ar MONTH| |00004d30| 2d 43 41 4c 45 4e 44 41 | 52 29 29 0d 20 20 20 22 |-CALENDA|R)). "| |00004d40| 20 53 68 6f 77 20 74 68 | 65 20 6e 65 78 74 20 6d | Show th|e next m| |00004d50| 6f 6e 74 68 20 66 6f 72 | 20 74 68 65 20 63 61 6c |onth for| the cal| |00004d60| 65 6e 64 61 72 20 72 65 | 74 75 72 6e 69 6e 67 20 |endar re|turning | |00004d70| 74 68 65 0d 6d 6f 6e 74 | 68 20 6e 61 6d 65 22 0d |the.mont|h name".| |00004d80| 20 20 20 28 69 66 20 28 | 3d 20 28 6d 6f 6e 74 68 | (if (|= (month| |00004d90| 20 63 61 6c 65 6e 64 61 | 72 29 20 31 32 29 0d 20 | calenda|r) 12). | |00004da0| 20 20 20 20 20 28 73 65 | 74 66 20 28 79 65 61 72 | (se|tf (year| |00004db0| 20 63 61 6c 65 6e 64 61 | 72 29 0d 20 20 20 20 20 | calenda|r). | |00004dc0| 20 20 20 20 20 20 20 20 | 20 20 28 31 2b 20 28 79 | | (1+ (y| |00004dd0| 65 61 72 20 63 61 6c 65 | 6e 64 61 72 29 29 29 29 |ear cale|ndar))))| |00004de0| 0d 20 20 20 28 73 65 74 | 66 20 28 6d 6f 6e 74 68 |. (set|f (month| |00004df0| 20 63 61 6c 65 6e 64 61 | 72 29 20 28 6e 65 78 74 | calenda|r) (next| |00004e00| 2d 6d 6f 6e 74 68 20 28 | 6d 6f 6e 74 68 20 63 61 |-month (|month ca| |00004e10| 6c 65 6e 64 61 72 29 29 | 29 0d 20 20 20 28 46 49 |lendar))|). (FI| |00004e20| 4c 4c 2d 43 41 4c 45 4e | 44 41 52 2d 43 45 4c 4c |LL-CALEN|DAR-CELL| |00004e30| 53 20 63 61 6c 65 6e 64 | 61 72 29 0d 20 20 20 28 |S calend|ar). (| |00004e40| 76 69 65 77 2d 64 72 61 | 77 2d 63 6f 6e 74 65 6e |view-dra|w-conten| |00004e50| 74 73 20 63 61 6c 65 6e | 64 61 72 29 0d 20 20 20 |ts calen|dar). | |00004e60| 3b 3b 20 72 65 74 75 72 | 6e 20 74 68 65 20 6e 61 |;; retur|n the na| |00004e70| 6d 65 20 6f 66 20 74 68 | 65 20 6d 6f 6e 74 68 0d |me of th|e month.| |00004e80| 20 20 28 47 45 54 2d 4d | 4f 4e 54 48 2d 4e 41 4d | (GET-M|ONTH-NAM| |00004e90| 45 20 28 6d 6f 6e 74 68 | 20 63 61 6c 65 6e 64 61 |E (month| calenda| |00004ea0| 72 29 29 0d 20 20 20 29 | 20 20 20 20 20 20 20 20 |r)). )| | |00004eb0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00004ec0| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 53 48 | | ; SH| |00004ed0| 4f 57 2d 4e 45 58 54 0d | 0d 28 44 45 46 4d 45 54 |OW-NEXT.|.(DEFMET| |00004ee0| 48 4f 44 20 53 48 4f 57 | 2d 50 52 45 56 49 4f 55 |HOD SHOW|-PREVIOU| |00004ef0| 53 20 28 28 63 61 6c 65 | 6e 64 61 72 20 4d 4f 4e |S ((cale|ndar MON| |00004f00| 54 48 2d 43 41 4c 45 4e | 44 41 52 29 29 0d 20 20 |TH-CALEN|DAR)). | |00004f10| 20 20 22 20 53 48 6f 77 | 20 74 68 65 20 70 72 65 | " SHow| the pre| |00004f20| 76 69 6f 75 73 20 6d 6f | 6e 74 68 20 2d 20 72 65 |vious mo|nth - re| |00004f30| 74 75 72 6e 69 6e 67 20 | 74 68 65 20 6d 6f 6e 74 |turning |the mont| |00004f40| 68 20 6e 61 6d 65 22 0d | 20 20 20 28 69 66 20 28 |h name".| (if (| |00004f50| 3d 20 28 6d 6f 6e 74 68 | 20 63 61 6c 65 6e 64 61 |= (month| calenda| |00004f60| 72 29 20 31 29 0d 20 20 | 20 20 20 20 28 73 65 74 |r) 1). | (set| |00004f70| 66 20 28 79 65 61 72 20 | 63 61 6c 65 6e 64 61 72 |f (year |calendar| |00004f80| 29 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |). | | |00004f90| 20 28 31 2d 20 28 79 65 | 61 72 20 63 61 6c 65 6e | (1- (ye|ar calen| |00004fa0| 64 61 72 29 29 29 29 0d | 20 20 20 28 73 65 74 66 |dar)))).| (setf| |00004fb0| 20 28 6d 6f 6e 74 68 20 | 63 61 6c 65 6e 64 61 72 | (month |calendar| |00004fc0| 29 20 28 70 72 65 76 69 | 6f 75 73 2d 6d 6f 6e 74 |) (previ|ous-mont| |00004fd0| 68 20 28 6d 6f 6e 74 68 | 20 63 61 6c 65 6e 64 61 |h (month| calenda| |00004fe0| 72 29 29 29 0d 20 20 20 | 28 46 49 4c 4c 2d 43 41 |r))). |(FILL-CA| |00004ff0| 4c 45 4e 44 41 52 2d 43 | 45 4c 4c 53 20 63 61 6c |LENDAR-C|ELLS cal| |00005000| 65 6e 64 61 72 29 0d 20 | 20 20 28 76 69 65 77 2d |endar). | (view-| |00005010| 64 72 61 77 2d 63 6f 6e | 74 65 6e 74 73 20 63 61 |draw-con|tents ca| |00005020| 6c 65 6e 64 61 72 29 0d | 20 20 20 3b 3b 20 72 65 |lendar).| ;; re| |00005030| 74 75 72 6e 20 74 68 65 | 20 6e 61 6d 65 20 6f 66 |turn the| name of| |00005040| 20 74 68 65 20 6d 6f 6e | 74 68 0d 20 20 28 47 45 | the mon|th. (GE| |00005050| 54 2d 4d 4f 4e 54 48 2d | 4e 41 4d 45 20 28 6d 6f |T-MONTH-|NAME (mo| |00005060| 6e 74 68 20 63 61 6c 65 | 6e 64 61 72 29 29 0d 20 |nth cale|ndar)). | |00005070| 20 20 29 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | ) | | |00005080| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005090| 20 20 20 20 20 20 20 3b | 20 53 48 4f 57 2d 50 52 | ;| SHOW-PR| |000050a0| 45 56 49 4f 55 53 0d 0d | 28 44 45 46 4d 45 54 48 |EVIOUS..|(DEFMETH| |000050b0| 4f 44 20 56 49 45 57 2d | 44 52 41 57 2d 43 41 4c |OD VIEW-|DRAW-CAL| |000050c0| 45 4e 44 41 52 2d 47 52 | 49 44 20 28 28 73 65 6c |ENDAR-GR|ID ((sel| |000050d0| 66 20 4d 4f 4e 54 48 2d | 43 41 4c 45 4e 44 41 52 |f MONTH-|CALENDAR| |000050e0| 29 29 0d 20 20 22 20 44 | 72 61 77 73 20 61 20 37 |)). " D|raws a 7| |000050f0| 58 36 20 67 72 69 64 20 | 77 69 74 68 20 6c 61 62 |X6 grid |with lab| |00005100| 65 6c 73 20 66 6f 72 20 | 74 68 65 20 6e 61 6d 65 |els for |the name| |00005110| 73 20 6f 66 20 74 68 65 | 20 72 6f 77 73 0d 20 20 |s of the| rows. | |00005120| 20 28 64 61 79 73 20 6f | 66 20 74 68 65 20 77 65 | (days o|f the we| |00005130| 65 6b 29 22 0d 20 20 28 | 6c 65 74 2a 20 28 28 76 |ek)". (|let* ((v| |00005140| 69 65 77 2e 77 69 64 74 | 68 20 28 70 6f 69 6e 74 |iew.widt|h (point| |00005150| 2d 68 20 28 76 69 65 77 | 2d 73 69 7a 65 20 73 65 |-h (view|-size se| |00005160| 6c 66 29 29 29 0d 20 20 | 20 20 20 20 20 20 20 28 |lf))). | (| |00005170| 76 69 65 77 2e 68 65 69 | 67 68 74 20 28 70 6f 69 |view.hei|ght (poi| |00005180| 6e 74 2d 76 20 28 76 69 | 65 77 2d 73 69 7a 65 20 |nt-v (vi|ew-size | |00005190| 73 65 6c 66 29 29 29 0d | 20 20 20 20 20 20 20 20 |self))).| | |000051a0| 20 28 63 61 6c 65 6e 64 | 61 72 2e 6f 72 69 67 69 | (calend|ar.origi| |000051b0| 6e 20 28 6d 61 6b 65 2d | 70 6f 69 6e 74 20 30 20 |n (make-|point 0 | |000051c0| 30 29 29 0d 20 20 20 20 | 20 20 20 20 20 28 69 6e |0)). | (in| |000051d0| 63 72 65 6d 65 6e 74 2d | 68 20 28 66 6c 6f 6f 72 |crement-|h (floor| |000051e0| 20 28 2f 20 76 69 65 77 | 2e 77 69 64 74 68 20 37 | (/ view|.width 7| |000051f0| 29 29 29 0d 20 20 20 20 | 20 20 20 20 20 28 69 6e |))). | (in| |00005200| 63 72 65 6d 65 6e 74 2d | 76 20 28 66 6c 6f 6f 72 |crement-|v (floor| |00005210| 20 28 2f 20 76 69 65 77 | 2e 68 65 69 67 68 74 20 | (/ view|.height | |00005220| 36 29 29 29 0d 20 20 20 | 20 20 20 20 20 20 29 0d |6))). | ).| |00005230| 20 20 20 20 3b 3b 20 20 | 69 74 65 72 61 74 65 20 | ;; |iterate | |00005240| 66 6f 72 20 74 68 65 20 | 37 20 64 61 79 73 0d 20 |for the |7 days. | |00005250| 20 20 20 28 6d 6f 76 65 | 2d 74 6f 20 73 65 6c 66 | (move|-to self| |00005260| 20 30 20 30 29 0d 20 20 | 20 20 28 6c 6f 6f 70 20 | 0 0). | (loop | |00005270| 66 6f 72 20 69 20 66 72 | 6f 6d 20 31 20 74 6f 20 |for i fr|om 1 to | |00005280| 36 0d 20 20 20 20 20 20 | 20 20 20 20 64 6f 0d 20 |6. | do. | |00005290| 20 20 20 20 20 20 20 20 | 20 28 6d 6f 76 65 2d 74 | | (move-t| |000052a0| 6f 20 73 65 6c 66 20 28 | 61 64 64 2d 70 6f 69 6e |o self (|add-poin| |000052b0| 74 73 20 28 70 65 6e 2d | 70 6f 73 69 74 69 6f 6e |ts (pen-|position| |000052c0| 20 73 65 6c 66 29 20 69 | 6e 63 72 65 6d 65 6e 74 | self) i|ncrement| |000052d0| 2d 68 29 29 0d 20 20 20 | 20 20 20 20 20 20 20 28 |-h)). | (| |000052e0| 6c 69 6e 65 2d 74 6f 20 | 73 65 6c 66 20 28 70 6f |line-to |self (po| |000052f0| 69 6e 74 2d 68 20 28 70 | 65 6e 2d 70 6f 73 69 74 |int-h (p|en-posit| |00005300| 69 6f 6e 20 73 65 6c 66 | 29 29 0d 20 20 20 20 20 |ion self|)). | |00005310| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 76 69 | | vi| |00005320| 65 77 2e 68 65 69 67 68 | 74 29 0d 20 20 20 20 20 |ew.heigh|t). | |00005330| 20 20 20 20 20 28 6d 6f | 76 65 2d 74 6f 20 73 65 | (mo|ve-to se| |00005340| 6c 66 20 28 2a 20 69 20 | 69 6e 63 72 65 6d 65 6e |lf (* i |incremen| |00005350| 74 2d 68 29 20 30 29 29 | 0d 20 20 20 20 0d 20 20 |t-h) 0))|. . | |00005360| 20 20 28 6c 6f 6f 70 20 | 66 6f 72 20 69 20 66 72 | (loop |for i fr| |00005370| 6f 6d 20 31 20 74 6f 20 | 35 0d 20 20 20 20 20 20 |om 1 to |5. | |00005380| 20 20 20 20 69 6e 69 74 | 69 61 6c 6c 79 20 28 6d | init|ially (m| |00005390| 6f 76 65 2d 74 6f 20 73 | 65 6c 66 20 30 20 28 2b |ove-to s|elf 0 (+| |000053a0| 20 28 70 6f 69 6e 74 2d | 76 0d 20 20 20 20 20 20 | (point-|v. | |000053b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000053c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000053d0| 20 20 63 61 6c 65 6e 64 | 61 72 2e 6f 72 69 67 69 | calend|ar.origi| |000053e0| 6e 29 20 69 6e 63 72 65 | 6d 65 6e 74 2d 76 29 29 |n) incre|ment-v))| |000053f0| 0d 20 20 20 20 20 20 20 | 20 20 20 64 6f 0d 20 20 |. | do. | |00005400| 20 20 20 20 20 20 20 20 | 3b 28 6d 6f 76 65 2d 74 | |;(move-t| |00005410| 6f 20 73 65 6c 66 20 30 | 20 28 61 64 64 2d 70 6f |o self 0| (add-po| |00005420| 69 6e 74 73 20 28 70 65 | 6e 2d 70 6f 73 69 74 69 |ints (pe|n-positi| |00005430| 6f 6e 20 73 65 6c 66 29 | 20 69 6e 63 72 65 6d 65 |on self)| increme| |00005440| 6e 74 2d 76 29 29 0d 20 | 20 20 20 20 20 20 20 20 |nt-v)). | | |00005450| 20 28 6c 69 6e 65 2d 74 | 6f 20 73 65 6c 66 20 76 | (line-t|o self v| |00005460| 69 65 77 2e 77 69 64 74 | 68 20 28 70 6f 69 6e 74 |iew.widt|h (point| |00005470| 2d 76 20 28 70 65 6e 2d | 70 6f 73 69 74 69 6f 6e |-v (pen-|position| |00005480| 20 73 65 6c 66 29 29 29 | 0d 20 20 20 20 20 20 20 | self)))|. | |00005490| 20 20 20 28 6d 6f 76 65 | 2d 74 6f 20 73 65 6c 66 | (move|-to self| |000054a0| 20 30 20 28 2b 20 69 6e | 63 72 65 6d 65 6e 74 2d | 0 (+ in|crement-| |000054b0| 76 20 28 70 6f 69 6e 74 | 2d 76 0d 20 20 20 20 20 |v (point|-v. | |000054c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000054d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000054e0| 20 20 20 20 20 28 70 65 | 6e 2d 70 6f 73 69 74 69 | (pe|n-positi| |000054f0| 6f 6e 20 73 65 6c 66 29 | 29 29 29 29 0d 20 20 20 |on self)|)))). | |00005500| 20 29 0d 20 20 29 20 20 | 20 20 20 20 20 20 20 20 | ). ) | | |00005510| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005520| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 56 49 45 | | ; VIE| |00005530| 57 2d 44 52 41 57 2d 43 | 41 4c 45 4e 44 41 52 2d |W-DRAW-C|ALENDAR-| |00005540| 47 52 49 44 0d 0d 28 44 | 45 46 4d 45 54 48 4f 44 |GRID..(D|EFMETHOD| |00005550| 20 46 49 52 53 54 2d 4f | 46 2d 4d 4f 4e 54 48 2d | FIRST-O|F-MONTH-| |00005560| 43 45 4c 4c 20 28 28 73 | 65 6c 66 20 6d 6f 6e 74 |CELL ((s|elf mont| |00005570| 68 2d 63 61 6c 65 6e 64 | 61 72 29 20 6d 6f 6e 74 |h-calend|ar) mont| |00005580| 68 20 79 65 61 72 29 0d | 20 20 22 52 65 74 75 72 |h year).| "Retur| |00005590| 6e 20 74 68 65 20 63 65 | 6c 6c 20 6f 66 20 74 68 |n the ce|ll of th| |000055a0| 65 20 76 69 65 77 20 77 | 68 69 63 68 20 63 6f 72 |e view w|hich cor| |000055b0| 72 6f 73 70 6f 6e 64 73 | 20 74 6f 20 74 68 65 20 |rosponds| to the | |000055c0| 0d 66 69 72 73 74 20 6f | 66 20 74 68 65 20 6d 6f |.first o|f the mo| |000055d0| 6e 74 68 20 72 65 74 75 | 72 6e 69 6e 67 20 74 68 |nth retu|rning th| |000055e0| 65 20 63 65 6c 6c 20 61 | 73 20 61 20 4d 61 63 20 |e cell a|s a Mac | |000055f0| 70 6f 69 6e 74 22 0d 20 | 20 28 6c 65 74 2a 20 28 |point". | (let* (| |00005600| 28 68 2d 70 6f 73 20 28 | 2a 20 28 70 6f 69 6e 74 |(h-pos (|* (point| |00005610| 2d 68 20 28 63 65 6c 6c | 2d 73 69 7a 65 20 73 65 |-h (cell|-size se| |00005620| 6c 66 29 29 0d 20 20 20 | 20 20 20 20 20 20 20 20 |lf)). | | |00005630| 20 20 20 20 20 20 20 20 | 28 31 2b 20 28 66 69 72 | |(1+ (fir| |00005640| 73 74 2d 64 61 79 2d 6f | 66 2d 6d 6f 6e 74 68 0d |st-day-o|f-month.| |00005650| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005660| 20 20 20 20 20 20 20 20 | 20 20 6d 6f 6e 74 68 20 | | month | |00005670| 79 65 61 72 29 29 29 29 | 0d 20 20 20 20 20 20 20 |year))))|. | |00005680| 20 20 28 76 2d 70 6f 73 | 20 28 2f 20 28 70 6f 69 | (v-pos| (/ (poi| |00005690| 6e 74 2d 76 20 28 63 65 | 6c 6c 2d 73 69 7a 65 20 |nt-v (ce|ll-size | |000056a0| 73 65 6c 66 29 29 20 32 | 29 29 0d 20 20 20 20 20 |self)) 2|)). | |000056b0| 20 20 20 20 28 63 65 6c | 6c 20 28 72 65 61 64 2d | (cel|l (read-| |000056c0| 66 72 6f 6d 2d 73 74 72 | 69 6e 67 0d 20 20 20 20 |from-str|ing. | |000056d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 28 70 6f 69 | | (poi| |000056e0| 6e 74 2d 73 74 72 69 6e | 67 20 0d 20 20 20 20 20 |nt-strin|g . | |000056f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 28 70 6f 69 | | (poi| |00005700| 6e 74 2d 74 6f 2d 63 65 | 6c 6c 20 73 65 6c 66 20 |nt-to-ce|ll self | |00005710| 68 2d 70 6f 73 20 76 2d | 70 6f 73 0d 20 20 20 20 |h-pos v-|pos. | |00005720| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005730| 20 20 20 20 20 20 20 20 | 20 20 20 20 29 29 29 29 | | ))))| |00005740| 29 0d 20 20 20 20 3b 3b | 20 72 65 74 75 72 6e 20 |). ;;| return | |00005750| 74 68 65 20 63 65 6c 6c | 20 61 73 20 61 20 6d 61 |the cell| as a ma| |00005760| 63 20 70 6f 69 6e 74 0d | 20 20 20 20 63 65 6c 6c |c point.| cell| |00005770| 29 0d 20 20 29 20 20 20 | 20 20 20 20 20 20 20 20 |). ) | | |00005780| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005790| 20 20 20 20 20 20 20 20 | 20 20 3b 20 46 49 52 53 | | ; FIRS| |000057a0| 54 2d 4f 46 2d 4d 4f 4e | 54 48 2d 43 45 4c 4c 0d |T-OF-MON|TH-CELL.| |000057b0| 0d 28 44 45 46 4d 45 54 | 48 4f 44 20 4c 41 53 54 |.(DEFMET|HOD LAST| |000057c0| 2d 4f 46 2d 4d 4f 4e 54 | 48 2d 43 45 4c 4c 20 28 |-OF-MONT|H-CELL (| |000057d0| 28 73 65 6c 66 20 6d 6f | 6e 74 68 2d 63 61 6c 65 |(self mo|nth-cale| |000057e0| 6e 64 61 72 29 20 6d 6f | 6e 74 68 20 79 65 61 72 |ndar) mo|nth year| |000057f0| 29 0d 20 20 20 20 22 52 | 65 74 75 72 6e 20 74 68 |). "R|eturn th| |00005800| 65 20 63 65 6c 6c 20 6f | 66 20 74 68 65 20 76 69 |e cell o|f the vi| |00005810| 65 77 20 77 68 69 63 68 | 20 63 6f 72 72 6f 73 70 |ew which| corrosp| |00005820| 6f 6e 64 73 20 74 6f 20 | 74 68 65 0d 6c 61 73 74 |onds to |the.last| |00005830| 20 64 61 79 20 6f 66 20 | 74 68 65 20 6d 6f 6e 74 | day of |the mont| |00005840| 68 20 72 65 74 75 72 6e | 69 6e 67 20 74 68 65 20 |h return|ing the | |00005850| 63 65 6c 6c 20 61 73 20 | 61 20 4d 61 63 20 70 6f |cell as |a Mac po| |00005860| 69 6e 74 22 0d 20 20 20 | 28 6c 65 74 2a 20 28 28 |int". |(let* ((| |00005870| 68 2d 70 6f 73 20 28 2a | 20 28 70 6f 69 6e 74 2d |h-pos (*| (point-| |00005880| 68 20 28 63 65 6c 6c 2d | 73 69 7a 65 20 73 65 6c |h (cell-|size sel| |00005890| 66 29 29 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |f)). | | |000058a0| 20 20 20 20 20 20 20 28 | 31 2b 20 28 6c 61 73 74 | (|1+ (last| |000058b0| 2d 64 61 79 2d 6f 66 2d | 6d 6f 6e 74 68 20 6d 6f |-day-of-|month mo| |000058c0| 6e 74 68 20 79 65 61 72 | 29 29 29 29 0d 20 20 20 |nth year|)))). | |000058d0| 20 20 20 20 20 20 28 76 | 2d 70 6f 73 20 28 2f 20 | (v|-pos (/ | |000058e0| 28 70 6f 69 6e 74 2d 76 | 20 28 63 65 6c 6c 2d 73 |(point-v| (cell-s| |000058f0| 69 7a 65 20 73 65 6c 66 | 29 29 20 32 29 29 0d 20 |ize self|)) 2)). | |00005900| 20 20 20 20 20 20 20 20 | 28 63 65 6c 6c 20 28 72 | |(cell (r| |00005910| 65 61 64 2d 66 72 6f 6d | 2d 73 74 72 69 6e 67 0d |ead-from|-string.| |00005920| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005930| 28 70 6f 69 6e 74 2d 73 | 74 72 69 6e 67 20 0d 20 |(point-s|tring . | |00005940| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005950| 28 70 6f 69 6e 74 2d 74 | 6f 2d 63 65 6c 6c 20 73 |(point-t|o-cell s| |00005960| 65 6c 66 20 68 2d 70 6f | 73 20 76 2d 70 6f 73 0d |elf h-po|s v-pos.| |00005970| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005980| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005990| 29 29 29 29 29 0d 20 20 | 20 20 3b 3b 20 72 65 74 |))))). | ;; ret| |000059a0| 75 72 6e 20 74 68 65 20 | 63 65 6c 6c 20 61 73 20 |urn the |cell as | |000059b0| 61 20 6d 61 63 20 70 6f | 69 6e 74 0d 20 20 20 20 |a mac po|int. | |000059c0| 63 65 6c 6c 29 0d 20 20 | 20 29 20 20 20 20 20 20 |cell). | ) | |000059d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000059e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; | |000059f0| 4c 41 53 54 2d 4f 46 2d | 4d 4f 4e 54 48 2d 43 45 |LAST-OF-|MONTH-CE| |00005a00| 4c 4c 0d 0d 28 44 45 46 | 4d 45 54 48 4f 44 20 4c |LL..(DEF|METHOD L| |00005a10| 41 59 4f 55 54 2d 44 41 | 59 2d 4c 41 42 45 4c 53 |AYOUT-DA|Y-LABELS| |00005a20| 20 28 28 73 65 6c 66 20 | 6d 6f 6e 74 68 2d 63 61 | ((self |month-ca| |00005a30| 6c 65 6e 64 61 72 29 29 | 0d 20 20 22 50 75 74 20 |lendar))|. "Put | |00005a40| 74 68 65 20 6e 61 6d 65 | 73 20 6f 66 20 74 68 65 |the name|s of the| |00005a50| 20 63 6f 6c 75 6d 6e 73 | 20 69 6e 20 74 68 65 20 | columns| in the | |00005a60| 66 69 72 73 74 20 72 6f | 77 20 6f 66 20 63 65 6c |first ro|w of cel| |00005a70| 6c 73 2d 20 4e 6f 74 65 | 3a 20 41 20 62 69 74 20 |ls- Note|: A bit | |00005a80| 6f 66 20 61 20 68 61 63 | 6b 0d 2d 20 77 6f 75 6c |of a hac|k.- woul| |00005a90| 64 20 62 65 20 6e 69 63 | 65 20 74 6f 20 68 61 76 |d be nic|e to hav| |00005aa0| 65 20 6f 70 74 69 6f 6e | 61 6c 20 66 6f 6e 74 73 |e option|al fonts| |00005ab0| 20 66 6f 72 20 74 68 65 | 20 64 61 79 73 20 61 6e | for the| days an| |00005ac0| 64 0d 63 65 6e 74 65 72 | 20 74 68 65 6d 20 6d 6f |d.center| them mo| |00005ad0| 72 65 20 69 6e 74 65 6c | 6c 69 67 65 6e 74 6c 79 |re intel|ligently| |00005ae0| 20 2d 20 61 6c 73 6f 20 | 73 68 6f 75 6c 64 20 64 | - also |should d| |00005af0| 6f 20 61 6c 6c 20 74 68 | 65 20 0d 63 61 6c 63 75 |o all th|e .calcu| |00005b00| 6c 61 74 69 6f 6e 73 20 | 62 79 20 74 68 65 20 73 |lations |by the s| |00005b10| 69 7a 65 20 6f 66 20 74 | 68 65 20 73 74 72 69 6e |ize of t|he strin| |00005b20| 67 2e 22 0d 20 20 28 6c | 65 74 2a 20 28 28 76 2e |g.". (l|et* ((v.| |00005b30| 6f 66 66 73 65 74 20 28 | 70 6f 69 6e 74 2d 76 20 |offset (|point-v | |00005b40| 28 76 69 65 77 2d 70 6f | 73 69 74 69 6f 6e 20 73 |(view-po|sition s| |00005b50| 65 6c 66 29 29 29 0d 20 | 20 20 20 20 20 20 20 20 |elf))). | | |00005b60| 28 68 2e 6f 66 66 73 65 | 74 20 28 70 6f 69 6e 74 |(h.offse|t (point| |00005b70| 2d 68 20 28 76 69 65 77 | 2d 70 6f 73 69 74 69 6f |-h (view|-positio| |00005b80| 6e 20 73 65 6c 66 29 29 | 29 29 0d 20 20 20 20 28 |n self))|)). (| |00005b90| 6c 6f 6f 70 20 66 6f 72 | 20 63 6f 75 6e 74 20 66 |loop for| count f| |00005ba0| 72 6f 6d 20 30 20 74 6f | 20 36 0d 20 20 20 20 20 |rom 0 to| 6. | |00005bb0| 20 20 20 20 20 66 6f 72 | 20 64 61 79 20 69 6e 20 | for| day in | |00005bc0| 27 28 22 53 75 6e 22 20 | 22 4d 6f 6e 22 20 22 54 |'("Sun" |"Mon" "T| |00005bd0| 75 65 73 22 20 22 57 65 | 64 22 20 22 54 68 75 72 |ues" "We|d" "Thur| |00005be0| 73 22 20 22 46 72 69 22 | 20 22 53 61 74 22 29 0d |s" "Fri"| "Sat").| |00005bf0| 20 20 20 20 20 20 20 20 | 20 20 77 69 74 68 20 76 | | with v| |00005c00| 2e 70 6f 73 20 3d 20 28 | 2b 20 35 20 76 2e 6f 66 |.pos = (|+ 5 v.of| |00005c10| 66 73 65 74 20 29 0d 20 | 20 20 20 20 20 20 20 20 |fset ). | | |00005c20| 20 77 69 74 68 20 73 69 | 7a 65 20 3d 20 28 70 6f | with si|ze = (po| |00005c30| 69 6e 74 2d 68 20 28 63 | 65 6c 6c 2d 73 69 7a 65 |int-h (c|ell-size| |00005c40| 20 73 65 6c 66 29 29 0d | 20 20 20 20 20 20 20 20 | self)).| | |00005c50| 20 20 64 6f 0d 20 20 20 | 20 20 20 20 20 20 20 28 | do. | (| |00005c60| 6c 65 74 20 28 28 68 2e | 70 6f 73 20 28 2b 20 68 |let ((h.|pos (+ h| |00005c70| 2e 6f 66 66 73 65 74 20 | 28 2a 20 63 6f 75 6e 74 |.offset |(* count| |00005c80| 20 73 69 7a 65 29 0d 20 | 20 20 20 20 20 20 20 20 | size). | | |00005c90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005ca0| 20 28 66 6c 6f 6f 72 20 | 28 2f 20 73 69 7a 65 20 | (floor |(/ size | |00005cb0| 33 29 29 29 29 0d 20 20 | 20 20 20 20 20 20 20 20 |3)))). | | |00005cc0| 20 20 20 20 20 20 29 0d | 20 20 20 20 20 20 20 20 | ).| | |00005cd0| 20 20 20 20 28 6d 6f 76 | 65 2d 74 6f 20 73 65 6c | (mov|e-to sel| |00005ce0| 66 20 68 2e 70 6f 73 20 | 76 2e 70 6f 73 29 0d 20 |f h.pos |v.pos). | |00005cf0| 20 20 20 20 20 20 20 20 | 20 20 20 28 70 72 69 6e | | (prin| |00005d00| 63 20 64 61 79 20 73 65 | 6c 66 29 0d 20 20 20 20 |c day se|lf). | |00005d10| 20 20 20 20 20 20 20 20 | 29 29 29 0d 20 20 29 20 | |))). ) | |00005d20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005d30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |00005d40| 20 20 20 20 3b 20 4c 41 | 59 4f 55 54 2d 44 41 59 | ; LA|YOUT-DAY| |00005d50| 2d 4c 41 42 45 4c 53 20 | 0d 0d 28 44 45 46 4d 45 |-LABELS |..(DEFME| |00005d60| 54 48 4f 44 20 4c 41 59 | 4f 55 54 2d 44 41 59 2d |THOD LAY|OUT-DAY-| |00005d70| 4e 55 4d 42 45 52 53 20 | 28 28 73 65 6c 66 20 6d |NUMBERS |((self m| |00005d80| 6f 6e 74 68 2d 63 61 6c | 65 6e 64 61 72 29 20 6d |onth-cal|endar) m| |00005d90| 6f 6e 74 68 20 79 65 61 | 72 29 0d 20 20 3b 3b 20 |onth yea|r). ;; | |00005da0| 20 62 65 67 69 6e 6e 69 | 6e 67 20 61 74 20 74 68 | beginni|ng at th| |00005db0| 65 20 66 69 72 73 74 20 | 6f 66 20 6d 6f 6e 74 68 |e first |of month| |00005dc0| 20 63 65 6c 6c 20 6c 61 | 79 6f 75 74 20 74 68 65 | cell la|yout the| |00005dd0| 20 64 61 79 0d 20 20 3b | 3b 20 20 6e 75 6d 62 65 | day. ;|; numbe| |00005de0| 72 73 20 66 6f 72 20 74 | 68 69 73 20 6d 6f 6e 74 |rs for t|his mont| |00005df0| 68 0d 20 20 28 6c 65 74 | 2a 20 28 28 76 2e 6f 66 |h. (let|* ((v.of| |00005e00| 66 73 65 74 20 28 70 6f | 69 6e 74 2d 76 20 28 76 |fset (po|int-v (v| |00005e10| 69 65 77 2d 70 6f 73 69 | 74 69 6f 6e 20 73 65 6c |iew-posi|tion sel| |00005e20| 66 29 29 29 0d 20 20 20 | 20 20 20 20 20 20 28 68 |f))). | (h| |00005e30| 2e 6f 66 66 73 65 74 20 | 28 70 6f 69 6e 74 2d 68 |.offset |(point-h| |00005e40| 20 28 76 69 65 77 2d 70 | 6f 73 69 74 69 6f 6e 20 | (view-p|osition | |00005e50| 73 65 6c 66 29 29 29 0d | 20 20 20 20 20 20 20 20 |self))).| | |00005e60| 20 28 64 61 79 73 2e 69 | 6e 2e 6d 6f 6e 74 68 20 | (days.i|n.month | |00005e70| 28 64 61 79 73 2d 69 6e | 2d 6d 6f 6e 74 68 20 6d |(days-in|-month m| |00005e80| 6f 6e 74 68 20 79 65 61 | 72 29 29 0d 20 20 20 20 |onth yea|r)). | |00005e90| 20 20 20 20 20 28 66 69 | 6c 6c 2e 61 6c 6c 3f 20 | (fi|ll.all? | |00005ea0| 28 66 69 6c 6c 2e 61 6c | 6c 20 73 65 6c 66 29 29 |(fill.al|l self))| |00005eb0| 29 0d 20 20 20 20 3b 3b | 20 20 73 68 6f 77 20 74 |). ;;| show t| |00005ec0| 68 65 20 6c 61 73 74 20 | 6f 66 20 74 68 65 20 6c |he last |of the l| |00005ed0| 61 73 74 20 6d 6f 6e 74 | 68 3f 0d 20 20 20 20 28 |ast mont|h?. (| |00005ee0| 69 66 20 66 69 6c 6c 2e | 61 6c 6c 3f 0d 20 20 20 |if fill.|all?. | |00005ef0| 20 20 20 3b 3b 20 20 70 | 72 65 70 65 6e 64 20 74 | ;; p|repend t| |00005f00| 68 65 20 64 61 79 73 0d | 20 20 20 20 20 20 28 6c |he days.| (l| |00005f10| 6f 6f 70 20 66 6f 72 20 | 64 61 79 20 69 6e 20 28 |oop for |day in (| |00005f20| 64 61 79 73 2d 74 6f 2d | 70 72 65 70 65 6e 64 20 |days-to-|prepend | |00005f30| 6d 6f 6e 74 68 20 79 65 | 61 72 29 0d 20 20 20 20 |month ye|ar). | |00005f40| 20 20 20 20 20 20 20 20 | 77 69 74 68 20 63 6f 6c | |with col| |00005f50| 75 6d 6e 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |umn. | | |00005f60| 69 6e 69 74 69 61 6c 6c | 79 20 28 73 65 74 66 20 |initiall|y (setf | |00005f70| 63 6f 6c 75 6d 6e 20 30 | 29 0d 20 20 20 20 20 20 |column 0|). | |00005f80| 20 20 20 20 20 20 64 6f | 0d 20 20 20 20 20 20 20 | do|. | |00005f90| 20 20 20 20 20 28 6c 65 | 74 20 28 28 68 2e 70 6f | (le|t ((h.po| |00005fa0| 73 20 28 2b 20 68 2e 6f | 66 66 73 65 74 20 28 2a |s (+ h.o|ffset (*| |00005fb0| 20 28 70 6f 69 6e 74 2d | 68 20 28 63 65 6c 6c 2d | (point-|h (cell-| |00005fc0| 73 69 7a 65 20 73 65 6c | 66 29 29 20 63 6f 6c 75 |size sel|f)) colu| |00005fd0| 6d 6e 29 29 29 0d 20 20 | 20 20 20 20 20 20 20 20 |mn))). | | |00005fe0| 20 20 20 20 20 20 20 20 | 28 76 2e 70 6f 73 20 28 | |(v.pos (| |00005ff0| 2b 20 35 20 76 2e 6f 66 | 66 73 65 74 20 29 29 29 |+ 5 v.of|fset )))| |00006000| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 28 |. | (| |00006010| 6d 6f 76 65 2d 74 6f 20 | 73 65 6c 66 20 68 2e 70 |move-to |self h.p| |00006020| 6f 73 20 76 2e 70 6f 73 | 29 0d 20 20 20 20 20 20 |os v.pos|). | |00006030| 20 20 20 20 20 20 20 20 | 28 70 72 69 6e 63 20 64 | |(princ d| |00006040| 61 79 20 73 65 6c 66 29 | 0d 20 20 20 20 20 20 20 |ay self)|. | |00006050| 20 20 20 20 20 20 20 28 | 73 65 74 66 20 63 6f 6c | (|setf col| |00006060| 75 6d 6e 20 28 2b 20 31 | 20 63 6f 6c 75 6d 6e 29 |umn (+ 1| column)| |00006070| 29 29 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 29 |)). | )| |00006080| 0d 20 20 20 20 20 20 29 | 0d 20 20 20 20 28 6c 6f |. )|. (lo| |00006090| 6f 70 20 66 6f 72 20 64 | 61 79 2e 63 6f 75 6e 74 |op for d|ay.count| |000060a0| 20 66 72 6f 6d 20 31 20 | 74 6f 20 64 61 79 73 2e | from 1 |to days.| |000060b0| 69 6e 2e 6d 6f 6e 74 68 | 0d 20 20 20 20 20 20 20 |in.month|. | |000060c0| 20 20 20 77 69 74 68 20 | 28 72 6f 77 20 63 6f 6c | with |(row col| |000060d0| 75 6d 6e 29 0d 20 20 20 | 20 20 20 20 20 20 20 69 |umn). | i| |000060e0| 6e 69 74 69 61 6c 6c 79 | 20 28 73 65 74 66 20 72 |nitially| (setf r| |000060f0| 6f 77 20 30 0d 20 20 20 | 20 20 20 20 20 20 20 20 |ow 0. | | |00006100| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 63 | | c| |00006110| 6f 6c 75 6d 6e 20 28 70 | 6f 69 6e 74 2d 68 20 28 |olumn (p|oint-h (| |00006120| 66 69 72 73 74 2d 6f 66 | 2d 6d 6f 6e 74 68 2d 63 |first-of|-month-c| |00006130| 65 6c 6c 20 73 65 6c 66 | 20 6d 6f 6e 74 68 20 79 |ell self| month y| |00006140| 65 61 72 29 29 29 0d 20 | 20 20 20 20 20 20 20 20 |ear))). | | |00006150| 20 64 6f 0d 20 20 20 20 | 20 20 20 20 20 20 28 6c | do. | (l| |00006160| 65 74 20 28 28 68 2e 70 | 6f 73 20 28 2b 20 68 2e |et ((h.p|os (+ h.| |00006170| 6f 66 66 73 65 74 20 28 | 2a 20 28 70 6f 69 6e 74 |offset (|* (point| |00006180| 2d 68 20 28 63 65 6c 6c | 2d 73 69 7a 65 20 73 65 |-h (cell|-size se| |00006190| 6c 66 29 29 20 63 6f 6c | 75 6d 6e 29 29 29 0d 20 |lf)) col|umn))). | |000061a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 28 | | (| |000061b0| 76 2e 70 6f 73 20 28 2b | 20 35 20 76 2e 6f 66 66 |v.pos (+| 5 v.off| |000061c0| 73 65 74 20 28 2a 20 28 | 70 6f 69 6e 74 2d 76 20 |set (* (|point-v | |000061d0| 28 63 65 6c 6c 2d 73 69 | 7a 65 20 73 65 6c 66 29 |(cell-si|ze self)| |000061e0| 29 20 72 6f 77 29 29 29 | 29 0d 20 20 20 20 20 20 |) row)))|). | |000061f0| 20 20 20 20 20 20 28 6d | 6f 76 65 2d 74 6f 20 73 | (m|ove-to s| |00006200| 65 6c 66 20 68 2e 70 6f | 73 20 76 2e 70 6f 73 29 |elf h.po|s v.pos)| |00006210| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 28 70 72 |. | (pr| |00006220| 69 6e 63 20 64 61 79 2e | 63 6f 75 6e 74 20 73 65 |inc day.|count se| |00006230| 6c 66 29 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |lf). | | |00006240| 28 63 6f 6e 64 20 28 28 | 3d 20 63 6f 6c 75 6d 6e |(cond ((|= column| |00006250| 20 36 29 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 | 6). | | |00006260| 20 20 20 20 20 20 20 28 | 73 65 74 66 20 63 6f 6c | (|setf col| |00006270| 75 6d 6e 20 30 0d 20 20 | 20 20 20 20 20 20 20 20 |umn 0. | | |00006280| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 72 | | r| |00006290| 6f 77 20 28 2b 20 31 20 | 72 6f 77 29 29 29 0d 20 |ow (+ 1 |row))). | |000062a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000062b0| 20 28 74 20 28 73 65 74 | 66 20 63 6f 6c 75 6d 6e | (t (set|f column| |000062c0| 20 28 2b 20 31 20 63 6f | 6c 75 6d 6e 29 29 29 29 | (+ 1 co|lumn))))| |000062d0| 29 29 0d 20 20 20 20 3b | 3b 20 61 6c 73 6f 20 61 |)). ;|; also a| |000062e0| 70 70 65 6e 64 20 69 66 | 20 66 69 6c 6c 2e 61 6c |ppend if| fill.al| |000062f0| 6c 0d 20 20 20 20 28 69 | 66 20 66 69 6c 6c 2e 61 |l. (i|f fill.a| |00006300| 6c 6c 3f 0d 20 20 20 20 | 20 20 28 6c 6f 6f 70 20 |ll?. | (loop | |00006310| 66 6f 72 20 64 61 79 20 | 69 6e 20 28 64 61 79 73 |for day |in (days| |00006320| 2d 74 6f 2d 61 70 70 65 | 6e 64 20 6d 6f 6e 74 68 |-to-appe|nd month| |00006330| 20 79 65 61 72 29 0d 20 | 20 20 20 20 20 20 20 20 | year). | | |00006340| 20 20 20 77 69 74 68 20 | 28 72 6f 77 20 63 6f 6c | with |(row col| |00006350| 75 6d 6e 29 0d 20 20 20 | 20 20 20 20 20 20 20 20 |umn). | | |00006360| 20 69 6e 69 74 69 61 6c | 6c 79 20 28 73 65 74 66 | initial|ly (setf| |00006370| 20 72 6f 77 20 28 69 66 | 20 28 3e 20 33 35 20 28 | row (if| (> 35 (| |00006380| 2b 20 28 64 61 79 73 2d | 69 6e 2d 6d 6f 6e 74 68 |+ (days-|in-month| |00006390| 20 6d 6f 6e 74 68 20 79 | 65 61 72 29 0d 20 20 20 | month y|ear). | |000063a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000063b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | | |000063c0| 20 20 20 20 20 20 20 20 | 20 20 28 6c 65 6e 67 74 | | (lengt| |000063d0| 68 20 28 64 61 79 73 2d | 74 6f 2d 70 72 65 70 65 |h (days-|to-prepe| |000063e0| 6e 64 20 6d 6f 6e 74 68 | 20 79 65 61 72 29 29 29 |nd month| year)))| |000063f0| 29 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |). | | +--------+-------------------------+-------------------------+--------+--------+ Only 25.0 KB of data is shown above.